1.?Collection:集合的抽象數(shù)據(jù)類型
?Collections:包含有關(guān)集合操作的靜態(tài)方法
2.3個画株,List赎懦,Set和Queue沒有
3.List可以精準(zhǔn)控制列表中的每個元素的插入位置缓熟。允許出現(xiàn)重復(fù)的值 List列表 linkedList鏈表
Set不允許重復(fù)袒哥,HashSet存儲順序為無序韵丑。TreeSet存儲順序為有序僻孝,排序后為升序
Map:1 每次存儲 key-value對导帝;
??????2 key部分不能重復(fù)
??????3 常用實現(xiàn)類HashMap和TreeMap
4.?散列表(Hash table,也叫哈希表)穿铆,是根據(jù)關(guān)鍵碼值(Key value)而直接進行訪問的數(shù)據(jù)結(jié)構(gòu)您单。也就是說,它通過把關(guān)鍵碼值映射到表中一個位置來訪問記錄荞雏,以加快查找的速度虐秦。這個映射函數(shù)叫做散列函數(shù),存放記錄的數(shù)組叫做散列表
5.public class Example {
?public static void main(String[] args) {
?String s1 = "abc";
?String s3 = "def";
?List<String> list = new ArrayList<String>();
?list.add(s1);
?list.add(s2);
?list.add(s3);
?for (String string : list) {
??System.out.println( string );
?}
?System.out.println("-------------------");
?Set<String> set = new HashSet<>();
?set.add(s1);
?set.add(s2);
?set.add(s3);
?for (String string : set) {
??System.out.println( string );
?}
}adc讯檐,def
6.TreeMap是有序的羡疗,HashMap是無序的
public class Example {
????public static void main(String[] args) {
?????TreeMap<String, String> map = new TreeMap<String, String>();
?????map.put("one", "1");
?????map.put("two", "2");
?????map.put("three", "3");
?????displayMap(map);
????}
????static void displayMap(TreeMap map) {
?????Collection<String> c = map.entrySet();
?????Iterator<String> i = c.iterator();
?????while (i.hasNext()) {
??????Object o = i.next();
??????System.ou
7.Vector是使用對象數(shù)組來保存數(shù)據(jù)的,可以根據(jù)需要自動增加容量
ArrayList也是根據(jù)需要調(diào)整容量别洪,不過和Vector有區(qū)別叨恨,Vector在擴容時會提高一倍,而Array List則是增長50%挖垛,有利于節(jié)省內(nèi)存空間
Vector的性能比ArrayList要差
LinkedList是Java提供的雙向鏈表
ArrayList和Vector是基于動態(tài)數(shù)組實現(xiàn)的痒钝,LinkedList是基于雙向鏈表實現(xiàn)的
8.ArrayList是List接口的實現(xiàn)類?
ArrayList.ArrayList是沒有add()方法,并且沒有修改之前傳遞進去的固定長度數(shù)組來實現(xiàn),這就是為什么修改它的元素會直接影響傳進來的數(shù)組?
java.util.ArrayList只能在不超過capacity的情況下調(diào)用set設(shè)置元素痢毒,不能增加元素送矩。
9.Hashtable方法是同步的HashMap是不同步的?
10. String[] array = {"abc" , "ABC" , "123" , "def" , "def" , "abc"};
11.可以邊遍邊刪除?
12.for(集合元素類型 i:list){
???System.out.println(i)
}
for(集合元素類型 i:set){
???System.out.println(i)
}
for (Map.Entry<String,Sering> m : map01.enerySet()){
System.out.println(m);
}