易截截图软件、单文件、免安装、纯绿色、仅160KB

java 删除List 中的重复数据

1. 循环list中的所有元素然后删除重复
public static List removeDuplicate(List list) {
for ( int i = 0 ; i < list.size() - 1 ; i ++ ) {
for ( int j = list.size() - 1 ; j > i; j -- ) {
if (list.get(j).equals(list.get(i))) {
list.remove(j);
}
}
}
return list;
}
2. 通过HashSet踢除重复元素
public static List removeDuplicate(List list) {
HashSet h = new HashSet(list);
list.clear();
list.addAll(h);
return list;
}
在groovy中当然也可以使用上面的两种方法, 但groovy自己提供了unique方法来去除重复数据
def list = [1, 2, 3, 2, 4, 1, 5]
list.unique() // [1, 2, 3, 4, 5]


相关文档:

C++和Java的多继承


多继承:
C++中的类可以直接实现多继承 如:class D:public A,public B,public C{……};
Java中不能直接实现这样的多继承,但是可以用接口(interface)来间接实现 如:
public class A{ ……}
public interface C{
  public void c1();
  public void c2();
}
public class C exten ......

Java理论与实践:正确使用volatile变量

Java™语言包含两种内在的同步机制:同步块(或方法)和volatile变量。这两种机制的提出都是为了实现代码线程的安全性。其中volatile变量的同步性较差(但有时它更简单并且开销更低),而且其使用也更容易出错。在这期的Java理论与实践中,Brian Goetz将介绍几种正确使用volatile变量的模式,并针对其适用性限制提出一 ......

Java初学者都应该搞懂的六个问题

对于这个系列里的问题,每个学Java的人都应该搞懂。当然,如果只是学Java玩玩就无所谓了。如果你认为自己已经超越初学者了,却不很懂这些问题,请将你自己重归初学者行列。内容均来自于CSDN的经典老贴。
问题一:我声明了什么!
String s = "Hello world!";
 许多人都做过这样的事情,但是,我们到底声明了什么?回答通 ......

Java中的排序比较方式:自然排序和比较器排序

  这里所说到的Java中的排序并不是指插入排序、希尔排序、归并排序等具体的排序算法。而是指执行这些排序算法时,比较两个对象“大小”的比较操作。我们很容易理解整型的 i>j 这样的比较方式,但当我们对多个对象进行排序时,如何比较两个对象的“大小”呢?这样的比较 stu1 > stu2 显然是不可 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号