这个方法是我偶然间看博客寻到的,是我见过的写程序这久以来,有种眼前一亮,惊为天人的感jiio。
可惜的是我忘了原文地址了,现在记下,以后如果帮到谁了,是他的功劳也应该是他的应该想做的。
public List<Student> listAndSet(){
Set<Integer> setIn=new HashSet<Integer>();
List<Student> stu=new ArrayList<Student>();
List<Student> newStu=new ArrayList<Student>();
stu.add(new Student(12,"johe","uiouio",98));
stu.add(new Student(13,"johe","uiouio",99));
stu.add(new Student(13,"johe","uiouio",98));
for (Student student : stu) {
if (setIn.add(student.getId())) {
newStu.add(student);
}
}
return newStu;
}
这个既用了set的不允许重复的特性,又没有太多复杂操作,只是忘了 add的方法就是一个boolean 返回值的方法。