Contents

参考:《改善java程序的151个建议》

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
public class Lian4 {

public static void main(String[] args){

List<Integer> list1 = new ArrayList<Integer>();
List<Integer> list2 = new LinkedList<Integer>();
list1.add(123);
list2.add(123);

list1.add(456);
list2.add(456);

System.out.println(list1.equals(list2));

}
}

  这里只要求实现了List接口就行,他不关心List的具体实现类,只要所有元素相等,并且长度也相等就表明两个List是相等的,与具体的容器类型无关。

  Java如此处理也确实是在为开发者考虑,列表知识一个容器,只要是同一种类型的容器(如List),不用关心容器的细节差别(如ArrayList和LinkedList),只要确定所有的元素数据相等,那两个列表就相等的。

其他集合类型,如Set,Map等也是如此。

Contents