List接口ArrayList用法详解
ArrayList常用方法:
1. List.add():添加的方法(可以添加字符串,常量,以及对象)
List list=new ArrayList();
list.add("北京尚学堂");
list.add(2016110747);
list.add("学习Java");
2. List.size():看数组的长度
System.out.println("\nlist的长度:"+list.size());
4. List.isEmpty():查看数组是否为空
System.out.println("\n数组是否为空?"+list.isEmpty());
5. List.addAll():将一个数组添加到另一个数组中。
List list2=new ArrayList();
list2.add("学习ArrayList");
list2.add("北京尚学堂");
list2.add(2016110747);
list.addAll(list2);
System.out.println("\n俩个集合相加之后的集合元素:"+list);
6. List.remove():根据对象去删除。(删除集合中的第一个对象)
list.remove("北京尚学堂");
System.out.println("\n移除一个指定对象元素之后的元素集合:"+list+"\n移除一个指定对象元素之后的元素集合长度:"+list.size());
7. List.remove(new integer()):根据索引去删除
list.remove(3);
System.out.println("\n移除一个指定索引元素之后的元素集合:"+list);
8. List.removeAll():删除相同的元素
list.removeAll(list2);
9. List.retainAll():删除不同的元素
System.out.println("\n"+list);
System.out.println("\n"+list2);
list.retainAll(list2);
System.out.println("\n移除俩个集合不同元素之后的元素集合:"+list);
10. List.constains():查看指定对象是否存在(存在返回true,不存在返回false)
System.out.println("\n判断指定元素是否属于集合:"+list.contains(2016110747));
10.List.containsAll():list中是否包含对象的全部元素(包含返回true,不包含返回false)
System.out.println("\n"+list);
System.out.println("\n"+list2);
System.out.println("\n判断指定集合(list2)内的所有元素是否属于list集合:"+list.containsAll(list2));
第一种方式:加强for循环
System.out.println("**********加强for循环来遍历集合中的元素**************\n");
for (Object obj : list) {
System.out.print(obj+"\t");
}
第二种方式:普通for循环
System.out.println("\n**********for循环遍历集合中的元素**************\n");
for (int i = 0; i < list.size(); i++) {
System.out.print(list.get(i)+"\t");
}
第三种方式:使用ListIterator()遍历元素集合
System.out.println("\n**********迭代器遍历集合中的元素**************\n");
java.util.Iterator ite=list.iterator();//正向遍历
while (ite.hasNext()) {
Object obj = (Object) ite.next();
System.out.print(obj+"\t");
}
System.out.println("\n***********使用ListIterator()遍历元素集合*********\n");
ListIterator listIterator=list.listIterator();
System.out.println("正向遍历:");
System.out.println("\n到达末尾,后面还有元素吗?"+listIterator.hasNext());
System.out.println("到达末尾,前面还有元素吗?"+listIterator.hasPrevious());
while (listIterator.hasNext()) {
System.out.println(listIterator.next()+"\t");
}
System.out.println("\n到达末尾,后面还有元素吗?"+listIterator.hasNext());
System.out.println("到达末尾,前面还有元素吗?"+listIterator.hasPrevious());
while (listIterator.hasPrevious()) {
System.out.println(listIterator.previous());
}
说明:在这里当我发现list集合的第一个和第三个数据一样时,我用了list.set()去修改了第一个数据。顺便分享一下list.set()方法:
list.set(0, "学习Java苦中作乐");
list.set(index, element)//index:是索引;element:是修改后的数据。因为集合是0序的,所以索引从0开始。