如果你现在遇到了这样的问题,想合并两个list并且要去重而且还要保持之前list的排序方式,那么请往下看。
List<Integer> classTime = new ArrayList<Integer>();
List<Integer> attendClassTime = new ArrayList<Integer>();
classTime.add(2);
classTime.add(1);
classTime.add(3);
attendClassTime.add(3);
attendClassTime.add(1);
attendClassTime.add(2);
classTime.addAll(attendClassTime);
classTime = new ArrayList<Integer>(new LinkedHashSet<Integer>(classTime));//去重保持当前排序
System.out.println(classTime.toString());
打印的结果为:[2,1,3]。 说明保持的是一个list的顺序,去掉了第二个list中和第一个中重复的元素,如果第二个list中有不同则追加到第一个list最后面.
就这样的几行代码即可解决您的问题。本人也作为学习阶段的记录。分享给大家,一起来学习。