ArrayList 讀快 改 慢 (底層數(shù)組實(shí)現(xiàn))
LinkedList 改快 讀 慢 (鏈表 實(shí)現(xiàn))
Hash 兩者之間

重復(fù)是指equals相同就是重復(fù)
當(dāng)對(duì)象當(dāng)作索引的時(shí)候(鍵、值):重寫equals方法,必須重寫hashCode方法,保證equals了,要保證hashCode也相同
Set: 沒有順序,不可以重復(fù)
List: 有順序,可以重復(fù)
Map:一個(gè)叫鍵,一個(gè)值 兩個(gè)兩個(gè)往里面放的
Collection方法 舉例子一:
package com.Collection;
import java.util.ArrayList;
import java.util.Collection;
public class CollectionTest {
public static void main(String []args){
Collection c = new ArrayList();
c.add("hello");
c.add(new Integer(12));
c.add("lsb");
System.out.println(c.size());
System.out.println(c);
}
}
顯示結(jié)果:
3
[hello, 12, lsb]
分析:打印 c 的時(shí)候調(diào)用c.toString()方法,顯示的是c中的所有的內(nèi)容并用[]擴(kuò)住
Collection方法 舉例二: Iterator
package com.Collection;
import java.util.Collection;
import java.util.HashSet;
import java.util.Iterator;
public class CollectionTest {
public static void main(String []args){
Collection c = new HashSet();
c.add("hello");
c.add("abc");
c.add("lsb");
Iterator iter = c.iterator();
while(iter.hasNext()){
String str = (String)iter.next();
System.out.println(str);
}
}
}
顯示結(jié)果:
hello
lsb
abc
Collection方法 舉例二: Set方法
package com.Collection;
import java.util.Collection;
import java.util.HashSet;
import java.util.Iterator;
public class CollectionTest {
public static void main(String []args){
Collection c1 = new HashSet();
c1.add("a");
c1.add("b");
c1.add("c");
Collection c2 = new HashSet();
c2.add("a");
c2.add("b");
c2.add("d");
Collection cn = new HashSet(c1);
cn.retainAll(c2); //取兩個(gè)集合的交集
Collection cm = new HashSet(c1);
cm.addAll(c2);
System.out.println(cn);
System.out.println(cm);//取兩個(gè)集合的并集
}
}
顯示結(jié)果:
[a, b]
[d, a, c, b]
當(dāng)對(duì)象要比較大小的時(shí)候,那要看該對(duì)象是否實(shí)現(xiàn)了Comparable接口,該接口中只有一個(gè)
方法public int compareTo(Object obj);(如果為jdk1.5以上那么參數(shù)為T 泛型),這樣才可以比較大小與排序
MAP