---------------------- <a href="http://www.itheima.com"target="blank">ASP.Net+Unity开发</a>、<a href="http://www.itheima.com"target="blank">.Net培训</a>、期待与您交流! ----------------------
package heimaLog;
import java.util.*;
/*
* Collection
* |--List: 元素是有序的,元素可以重复,以为该集合体系中有索引。
* |--set: 元素是无序的,元素不可以重复。
*
* List集合 可以按照指定的顺序插入元素。
* set()方法可以改变元素的 值
* 凡是带有角标的方法都是该体系特有的方法
*
* 增: add(index,element);
* addAll(index,Collection);
* 删: remove(index);
*
* 改: set(index,element);
*
* 插: get(index);
* subList(from,to);
* listIterator();
*
*List集合特有的迭代器,ListIterator是Iterator的子接口。
*
*在迭代的过称中,不可以通过集合对象的方法操作集合中的元素。
*因为会发生ConcurrenModificationExcepiton异常
*如果要对集合中的元素进行添加修改删除就需要使用其子接口,ListIterator接口。
*
*ListIterator只能通过List的ListIterator方法获取。
*
* */
public class ListDemo {
public static void main(String[] args) {
// TODO Auto-generated method stub
ArrayList al= new ArrayList();
al.add("java001");
al.add("java003");
al.add("java004");
al.add("java005");
sop("元集合是:"+al);
al.add(1,"java008");
al.set(2, "java00f");
sop("get(1):= "+al.get(1));
sop(al);
for(int x = 0;x<al.size();x++)//同样可以通过迭代器的方式去取元素
//但是迭代器没有添加的动作
{
sop(al.get(x));
}
ListIterator li =al.listIterator();
while(li.hasNext()){
Object obj =li.next();
if(obj.equals("java001")){
li.set("java006");
}
}
sop(al);
sop(li.hasPrevious());//是否有一个前继元素
while(li.hasPrevious()){
sop("===:"+li.previous());
}
//通过IndexOf()获取对象的位置
sop("index="+al.indexOf("java001"));
List sub = al.subList(1, 3);
sop("sub = "+ sub);
}
public static void sop(Object obj){
System.out.println(obj);
}
}
---------------------- <a href="http://www.itheima.com"target="blank">ASP.Net+Unity开发</a>、<a href="http://www.itheima.com"target="blank">.Net培训</a>、期待与您交流! ----------------------