public class DifList { public static void main(String[] args) { List<String> a = new ArrayList(); a.add("1"); a.add("2"); a.add("3"); a.add("4"); List<String> b = new ArrayList(); b.add("1"); b.add("7"); b.add("8"); b.add("4"); //作业不一样的试题 List<String> hList = new ArrayList<>(); //学生不一样的试题 List<String> sList = new ArrayList<>(); //创建 Map<对象,出现次数> (直接指定大小减少空间浪费) HashMap<String, Integer> map = new HashMap<>(a.size()); for (String aa : a) { map.put(aa, 1); } for (String bb : b) { if(map.get(bb) == null){ sList.add(bb); }else{ map.put(bb, 2); } } //把出现次数为1的 Key:Value 捞出,并把Key添加到返回结果 for(Map.Entry<String, Integer> entry : map.entrySet()) { if (entry.getValue() == 1) { hList.add((String) entry.getKey()); } } System.out.println(hList); System.out.println(sList); } }
高效查询两个list的不同元素
最新推荐文章于 2020-08-23 21:52:16 发布