List<Poi> 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<Bookmarks> 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不能改变