list集合使用过程的问题

				List poiList = poiService.getPOIList(poi);
				for (Poi p : poiList) {
					p.setCollection(2);
				}
				// 判断是否收藏
				Bookmarks bookmarks = new Bookmarks();
				bookmarks.setUserId(userId);
				bookmarks.setStatus(1);
				bookmarks.setType(1);
				List bookMarksList = bookMarksService
						.getBookMarksList(bookmarks);
				for (int k = 0; k < poiList.size(); k++) {					
					for (int w = 0; w < bookMarksList.size(); w++) {
						if (bookMarksList.get(w).getFocusId().equals(poiList.get(k).getId())) {
							poiList.get(k).setCollection(1);			
						}	

					}
				}
				generalDto.setItems(poiList); 

代码中poiList 集合是从数据库查出来的,按照分数的大小拍好顺序的,bookmarksList集合从数据库查到的,没有排序要求,

现在需求:返回poiList集合,保证其中的排序从数据库中查出来的顺序,在返回之前,需要和bookmarksList做比较,如何按照if条件匹配成功了,则给poiList中的数据的字段collection赋值为1。

解决的办法如上:其中 ,参与过的赋值好的数据的collection=1不能改变

你可能感兴趣的:(Java基础)