在java语言中的java.util包提供了一些集合类,这些集合类又被称作容器。
区别集合类和数组:
(1)数组的长度是固定的,集合的长度是可变的。
(2)数组是用来存放基本数据类型的,集合是用来存放对象的引用。
集合集合中接口,类之间的继承,实现关系手绘图:
- Collection接口
Collection接口定义了许多非常常用的方法,下面来了解这些方法的使用:public static void main(String[] args) { Collection cc = new ArrayList(); // 1.向集合中添加元素 cc.add(123); cc.add("张三"); cc.add(true); cc.add(new Date()); cc.add(new Person("王二", 15)); System.out.println(cc); // 2.向集合中添加集合 Collection bb = Arrays.asList(1, 2, 3); cc.addAll(bb); // 3.集合的数据元素个数 int res = cc.size(); System.out.println(res); // 4 // 4.判空 boolean res0 = cc.isEmpty(); System.out.println(res0); // false // 5.是否包含某个元素 boolean res1 = cc.contains(123); System.out.println(res1); // true boolean res2 = cc.contains(456); System.out.println(res2); // false boolean res3 = cc.contains(new Person("王二", 15)); System.out.println(res3); // false,如果不重写Person类中的equals() 方法,则比较的依旧是地址值,返回false // 根据元素所在类的equals()方法进行判断 // 6.是否包含某个集合 boolean res4 = cc.containsAll(bb); System.out.println(res4); // 7.清空集合元素 // cc.clear(); System.out.println(cc); // 8.求两个集合的交集 【返回值为布尔值,返回结果重新赋值给cc。】 Collection dd = new ArrayList(); dd.add(1); dd.add(2); dd.add(745); cc.retainAll(dd); System.out.println(cc);// [1,2] // 9.删除一个元素remove 【删除不存在的元素返回false】 cc.remove("张三"); cc.remove(999); System.out.println(cc); // 10.删除两个集合中公共的部分。[返回值为布尔类型,留下cc的剩余部分,重新赋值给cc] cc.add("张三"); cc.add("789"); cc.add("ssdgg"); dd.add("李四"); System.out.println(dd); cc.removeAll(dd); System.out.println(cc); // 11.比较俩个集合是否相等 cc.equals(dd); // 12.将集合转成数组 Object[] o = cc.toArray(); for (int i = 0; i < o.length; i++) { System.out.print(o[i] + "*"); } System.out.println(); // 13.iterator() 返回一个Iterator接口实现类对象。进而实现集合遍历 Iterator iterator = cc.iterator(); while (iterator.hasNext()) { System.out.println(iterator.next()); } }