集合:可以存储不同类型的对象(一般是同类型),可以增删,相比数组更加灵活
import java.util.ArrayList; import java.util.Collection; public class CollectionDemo { public static void main(String[] args) { Collection c1 = new ArrayList(); c1.add("abc1"); c1.add("abc2"); c1.add("abc3"); c1.add("abc4"); System.out.println(c1); // .clear()方法移除所有元素 c1.clear(); System.out.println(c1); Collection c2 = new ArrayList(); c2.add("abc5"); c2.add("abc6"); c2.add("abc7"); c2.add("abc8"); // .remove()方法移除某一个元素,返回boolean值 System.out.println(c2.remove("abc6")); // true System.out.println(c2); // .size()方法返回元素个数 System.out.println(c2.size()); } }
import java.util.ArrayList; import java.util.Collection; import java.util.Iterator; public class CollectionDemo1 { public static void main(String[] args) { Collection c = new ArrayList(); c.add("hello"); c.add("world"); c.add("java"); c.add("hi"); System.out.println(c); // 集合转为数组,遍历 Object[] objs = c.toArray(); for (int i=0; i<objs.length; i++) { System.out.print(objs[i]); String str = (String) objs[i]; System.out.println(", "+ str.length()); } // 迭代器遍历 Iterator it = c.iterator(); // .hasNext()方法判断是否存在下一个元素 while(it.hasNext()) { String s = (String) it.next(); System.out.print(s+", "); } } }
import java.util.ArrayList; import java.util.Collection; import java.util.Iterator; public class CollectionDemo2 { public static void main(String[] args) { Collection c = new ArrayList(); Person p1 = new Person("貂蝉", 10); Person p2 = new Person("吕布", 25); Person p3 = new Person("孙权", 22); // 对象添加到集合 c.add(p1); c.add(p2); c.add(p3); Object[] obj = c.toArray(); for(int i=0; i<obj.length; i++) { Person p = (Person) obj[i]; System.out.println(p.getName() + ": " + p.getAge()); } System.out.println("******"); c.add(new Person("诸葛亮", 18)); Iterator iterator = c.iterator(); while (iterator.hasNext()) { Person p = (Person) iterator.next(); System.out.println(p.getName() + ": " + p.getAge()); } } } class Person { private String name; private int age; public Person() { super(); } public Person(String name, int age) { super(); this.name = name; this.age = age; } public String getName() { return this.name; } public void setName(String name) { this.name = name; } public int getAge() { return this.age; } public void setAge(int age) { this.age = age; } }