數組:(能夠存儲基本數據類型)是用來存現對象的一種容器,可是數組的長度固定,不適合在對象數量未知的狀況下使用。java
集合:(只能存儲對象,對象類型能夠不同)的長度可變(動態的數組),可在多數狀況下使用。數組
在java集合中,集合分了兩個大的接口,分別爲:Collection接口和Map接口。spa
Collection接口又分爲:List接口和Set接口。分別由不一樣的子類來實現。code
我先建立一個ArrayList對象,用ArrayList來講明一下集合裏面的基本方法:對象
Collection coll = new ArrayList();
(1)、size()方法:返回集合中元素個數blog
System.out.println(coll.size());
(2)、add(Object obj):向集合中添加一個元素(注:如今我沒有使用泛型,因此不一樣類型的數據都能添加到集合中)接口
coll.add("AA"); coll.add(new Date()); coll.add(123); coll.add('B');
(3)、addAll(Collection coll):將形參coll中包含的全部元素添加到當前集合中rem
Collection coll1 = Arrays.asList(1,2,3);
coll.addAll(coll1);
這裏是將coll1集合裏面的元素所有添加到coll集合當中。get
(4)、isEmpty():判斷集合是否爲空,返回true 或者 false數學
System.out.println(coll.isEmpty());
(5)、clear():清空集合元素
coll.clear();
(6)、contains(Object obj):判斷集合是否包含指定的obj元素,若是包含,返回true,不然返回flase
boolean b1 = coll.contains("AA"); System.out.println(b1);
(7)、containsAll(Collection coll):判斷當前集合是否包含coll中全部的元素
Collection coll2 = new ArrayList(); coll2.add(123); coll2.add('B'); boolean b2 = coll.containsAll(coll2); System.out.println(b2);
這裏是coll裏面的元素是否包含coll2集合裏面的所有元素,若包含所有元素,則返回true,不然返回false。
(8)、retainAll(Collection coll):求當前集合與coll的共有的元素,返回給當前集合(就至關於數學的交集)
coll.retainAll(coll2);
System.out.println(coll);
(9)、remove(Object obj):刪除集合中的obj元素。若刪除成功,返回true;不然返回false。
boolean b3 = coll.remove(123);
(10)、removeAll(Collection coll):從當前集合中刪除包含在coll中的元素。(至關於數學集合的差)
coll.removeAll(coll2);
(11)、toArray():將集合轉化爲數組
Object[] obj = coll.toArray(); for(int i=0;i<obj.length;i++){ System.out.println(obj[i]); }
Collection coll = new ArrayList(); coll.add(123); coll.add(456); coll.add(789); coll.add("AA"); //iterator:返回一個Iterator接口實現類的對象,迭代器Iterator實現集合的遍歷 Iterator i = coll.iterator(); while(i.hasNext()){ System.out.println(i.next()); }
Collection coll = new ArrayList(); coll.add(123); coll.add(456); coll.add(789); coll.add("AA"); //加強for循環實現集合的遍歷 for(Object i:coll){ System.out.println(i); } String[] str = new String[]{"AA","BB","CC"}; //遍歷的類型 +變量 :遍歷的數組 for(String i:str){ System.out.println(i); }
//遍歷 key 集 Set set = map.keySet(); for(Object obj1 : set){ System.out.println(obj1); }
//遍歷value 集 Collection values = map.values(); Iterator i = values.iterator(); while(i.hasNext()){ System.out.println(i.next()); }
//遍歷"key-value"對 //方式一 Set set1 = map.keySet(); for(Object obj2 : set1){ System.out.println(obj2 + "---->"+map.get(obj2)); } //方式二: Set set3 = map.entrySet(); for(Object obj3 : set3){ Map.Entry entry = (Map.Entry) obj3; // System.out.println(entry.getKey() + "---->" + entry.getValue()); System.out.println(entry); }