Java中数据重新排序

主要是运用了List的add和addAll方法

先说一下List的add与addAll方法的区别:

result.add(list);//将list作为一个元素加入到result中,则result.size()==1
result.addAll(list);//将list中的每一个元素都加入到result中,则result.size() == list.size();

add是将传入的参数作为当前List中的一个Item存储,即使你传入一个List也只会令当前的List也只会增加一个元素;
addAll是传入一个List,将List中全部元素都加到当前List中,也就是当前List会增加的元素个数为传入List的元素个数;

下面是一些具体的代码:

//result 从数据库获取到的全部数据
 List<Map<String,Object>> result = new ArrayList<Map<String,Object>>();
 //list1 list2 list3 为重新排序的list 
 List<Map<String,Object>> list1 = new ArrayList<Map<String,Object>>();
 List<Map<String,Object>> list2 = new ArrayList<Map<String,Object>>();
 List<Map<String,Object>> list3 = new ArrayList<Map<String,Object>>();
 //遍历result 重新组装数据 
 for (Map<String, Object> map : result) {
            if(map.get("pattern").equals("AUTOR")){
            	list1.add(map);
            }else if(map.get("pattern").equals("OFF")){
            	list2.add(map);
            }else {
            	list3.add(map);
            }
		}
//重新组装的数据全部放在list中
  List<Map<String,Object>> list = new ArrayList<Map<String,Object>>();
  list.addAll(list1);
  list.addAll(list2);
  list.addAll(list3);
  return list;

这样返回的list就是按照需求排好序的全部数据集合;

发布了15 篇原创文章 · 获赞 15 · 访问量 562

猜你喜欢

转载自blog.csdn.net/qq_44191359/article/details/100987688