Collection集合
集合:集合是存儲對象數據的集合容器。集合比數組的優勢:1. 集合可以存儲任意類型的對象數據,數組只能存儲同一種數據類型 的數據。2. 集合的長度是會發生變化的,數組的長度是固定的。集合做什麼1:將對象添加到集合2:從集合中刪除對象3: 從集合中查找一個對象4:從集合中修改一個對象就是增刪改查-------| Collection 單例集合的跟接口。----------| List 如果是實現了List接口的集合類,具備的特點: 有序,可重複。----------| Set 如果是實現了Set接口的集合類,具備特點: 無序,不可重複。Collection接口中的方法:增加add(E e) 添加成功返回true,添加 失敗返回false.addAll(Collection c) 把一個集合 的元素添加到另外一個集合中去。刪除clear() 清空集合裡的所有元素remove(Object o) 指定刪除集合的元素removeAll(Collection c)刪除兩個集合的交集retainAll(Collection c)保留兩個集合的交集刪除不是交集的元素查看size()集合的大小判斷isEmpty() 判斷元素釋放為空 如果不為空返回為false 如果為空返回為truecontains(Object o) 其實contains方法內部是依賴於equals方法進行比較的。有時候需要重寫equals()方法containsAll(Collection<?> c) c元素是否包含這個c2元素迭代toArray()把集合中所有元素存儲到object數組中,從Object數組中取出的元素只能使用Object類型聲明變量接收,如果需要其他 的類型需要進行強制類型轉換。iterator() 迭代器的作用:就是用於抓取集合中的元素。迭代器的方法:hasNext()問是否有元素可遍歷。如果有元素可以遍歷,返回true,否則返回false 。next()獲取元素...remove()移除迭代器最後一次返回的元素。NoSuchElementException沒有元素的異常。出現的原因: 沒有元素可以被迭代了。。 | Collection c = newArrayList();c.add("葉輝");c.add("狗剩");c.add("狗娃");c.add("孫悟空");c.add("王強");c.add("豬八戒");Iterator it = c.iterator();//iterator 實際 上返回的是iterator接口的實現類對象。/* it.next();it.remove();刪除返回第一個元素*///清空所有元素while(it.hasNext()){//it.next();it.remove();}System.out.println(c.isEmpty());} |
publicstaticvoid add(){
//建立一個集合
Collection c = newArrayList();
//往集合裡面添加元素
c.add("葉輝");
c.add("狗娃");
c.add("狗剩");
Object[] ob = c.toArray();
System.out.println("元素的有多少:"+Arrays.toString(ob));
for(int i=0;i<ob.length;i++){
System.out.println(ob[i]);
}
Collection c2 = newArrayList();
c2.add("王強");
c2.add("狗剩");
c2.add("狗娃");
//c.clear();
//刪除元素
//c2.remove("王強");
//System.out.println("刪除成功了嗎:"+c2.remove("狗娃"));
Object[] oj = c2.toArray();
System.out.println(Arrays.toString(oj));
System.out.println("判斷元素是否為空:"+c.isEmpty());
System.out.println("是否包含這個狗剩這個元素:"+c.contains("葉輝"));
System.out.println("c元素是否包含這個c2元素:"+c.containsAll(c2));
//自定義一個集合
Collection c3 = newArrayList();
c3.add(new Person("葉輝",123));
c3.add(new Person("王強",345));
c3.add(new Person("棒槌",2345));
//如果在現實生活中,只要身份證編號一致,那麼就為同一個人。
System.out.println("寸存在該元素麼:"+c.contains(new Person("葉輝",123)));
}