扯了几个简单的程序,现在要进入初级的难点之一--容器。容器知识点包括:一个图,三个知识点(泛型,遍历,比较器),六个接口,以及九个常用类。重点要把握:增加,删除,修改,获取以及遍历。这对后面学习jdbc,db的crud有很大的作用。
1、List接口(有序内容可重复):它有三个重要的子类:ArrayList、LinkedList、Vector。
三者的区别和联系:
LinkedList:底层用双向链表实现的List。特点:查询效率低,增删效率高,线程不安全。
ArrayList:底层用数组实现的List。特点:查询效率高,增删效率低,线程不安全。
Vector:底层用数组实现的List,特点:线程安全。
三者的,增、删、获取的方法,我就不啰嗦了,这些API中都有。我重点讲一下它们的遍历。
以ArrayList为例,有以下五种遍历方法:
System.out.println("=========普通for遍历========");
//遍历 for+ Iterator + 普通for +ListIterator
for(int i=0;i<list.size();i++){
String temp=list.get(i);
System.out.println("下标为:"+i+"\t内容"+temp);
}
System.out.println("=========增强for遍历========");
for(String temp:list){
System.out.println("内容为:"+temp);
}
System.out.println("=========iterator遍历========");
Iterator<String> it=list.iterator();
while(it.hasNext()){
String temp=it.next();
System.out.println("内容为:"+temp);
}
System.out.println("=========listIterator正序遍历========");
ListIterator<String> listIt=list.listIterator();
//正序用法与Iterator
while(listIt.hasNext()){
String temp=listIt.next();
System.out.println("内容为:"+temp);
}
System.out.println("=========listIterator倒序遍历========");
//倒序输出 前提 游标有移动
while(listIt.hasPrevious()){
String temp=listIt.previous();
System.out.println("内容为:"+temp);
}
我们平时用取最简单,顺手的即可,其他的只要求,能看懂,全当增长见闻,以后看到别人的各种写法不至于看蒙了。
1、List接口(有序内容可重复):它有三个重要的子类:ArrayList、LinkedList、Vector。
三者的区别和联系:
LinkedList:底层用双向链表实现的List。特点:查询效率低,增删效率高,线程不安全。
ArrayList:底层用数组实现的List。特点:查询效率高,增删效率低,线程不安全。
Vector:底层用数组实现的List,特点:线程安全。
三者的,增、删、获取的方法,我就不啰嗦了,这些API中都有。我重点讲一下它们的遍历。
以ArrayList为例,有以下五种遍历方法:
System.out.println("=========普通for遍历========");
//遍历 for+ Iterator + 普通for +ListIterator
for(int i=0;i<list.size();i++){
String temp=list.get(i);
System.out.println("下标为:"+i+"\t内容"+temp);
}
System.out.println("=========增强for遍历========");
for(String temp:list){
System.out.println("内容为:"+temp);
}
System.out.println("=========iterator遍历========");
Iterator<String> it=list.iterator();
while(it.hasNext()){
String temp=it.next();
System.out.println("内容为:"+temp);
}
System.out.println("=========listIterator正序遍历========");
ListIterator<String> listIt=list.listIterator();
//正序用法与Iterator
while(listIt.hasNext()){
String temp=listIt.next();
System.out.println("内容为:"+temp);
}
System.out.println("=========listIterator倒序遍历========");
//倒序输出 前提 游标有移动
while(listIt.hasPrevious()){
String temp=listIt.previous();
System.out.println("内容为:"+temp);
}
我们平时用取最简单,顺手的即可,其他的只要求,能看懂,全当增长见闻,以后看到别人的各种写法不至于看蒙了。