一,集合的体系结构图
二,集合的相关方法的使用(以ArrayList为例)
1,add();
如:
List list1=new ArrayList(); List list2=new ArrayList(); list2.add("你好,李焕英"); list2.add(123); list2.add('a'); list1.add('a'); list1.add('b'); list1.add("你好,李焕英"); list1.add(123); list1.add('男');
2,remove();
如:
list1.remove("你好,李焕英");
那么在集合list1中"你好,李焕英"这项就被移除了。
也可以用索引的方式来移除
如
list.remove(0);表示删除集合中第一个元素,也就是'a';
3,clear();
如:
list1.clear();
那么集合中的所有元素都被删除,输出的结果为[]
4,removeAll();
括号中接受的类型为Collections类型,也就是同样是完成了Collections的子接口的子类,如上题中的list2.
list1.removeAll(list2);
那么输出的结果中就删掉了"你好,李焕英",123,'a',这三个元素输出[b,'男'];
5,contains();
如:
list1.contains("你好,李焕英");
输出的结果就是true,这个方法主要是用来判断集合list1中是否存在括号内的内容,如果存在则返回true,否则返回false。
6,containsAll();
如:
list1.containsAll(list2);
输出的结果是true,这个方法主要是用来判断集合中是否存在集合list2中的所有元素,如果存在则返回true,否则返回false。
7,size();
如:
list2.size();
输出的结果是3,这个方法的主要作用是用来计算集合list2中存在有多少个元素并返回int类型的个数。
三,遍历集合
1,使用Iterator迭代器接受一个集合对象的iterator方法,使用迭代器的对象名去遍历,需要注意的是,一开始,iterator指的是顶部集合的第一个元素上一个,通过iterator.next()就可以得到第一个,第二个,再往下的元素,在遍历元素之前需要使用iterator.hasnext()方法来判断是否下一个元素存在,即判断当前的iterator所指的位置是不是集合的最后一个元素,如果不是,证明有下一个元素,那么就返回true,满足while循环继续执行,如果当前的iterator指的就是最后一个元素了,那么就返回false,循环停止。通过输出语句直接输出next,会调用自定义的book.toString()方法.
public class collection03 { public static void main(String[] ags){ List book= new ArrayList(); book.add(new Book("红楼梦","曹雪芹",32.5)); book.add(new Book("三国演义","罗贯中",41.5)); book.add(new Book("水浒传","施耐庵",36.8)); book.add(13241); Iterator iterator=book.iterator(); while (iterator.hasNext()) { Object next = iterator.next(); System.out.println(next); } } } class Book{ private String name; private String author; private double price; public Book(String name, String author, double price) { this.name = name; this.author = author; this.price = price; } public String getName() { return name; } public String getAuthor() { return author; } public double getPrice() { return price; } @Override public String toString() { return "Book{" + "name='" + name + '\'' + ", author='" + author + '\'' + ", price=" + price + '}'; } }
2,使用增强 for循环遍历集合元素,模板是for(元素类型 元素名:集合名或者数组名){访问元素};
如:上题中第二种遍历集合book的方式
for (Object o :book) { System.out.println(o); }
除此之外,增强的for还可以遍历数组元素,如
int[] num = {1, 2, 3, 4, 5, 6, 7, 8}; for (int o : num) { System.out.println(o);
输出的结果就是1到8