Java集合框架之List公共方法

/*
Collection集合:
List:元素是有序的,可以重复,该集合体系有索引。
Set:元素不能重复,不能有索引。


List集合常用方法:
1、添加元素
add(values)方法
add(int index,value) //在指定的索引下添加
2、删除元素
remove(int index)
3、修改
set(int index,value);
4、查找
get(int index); //查找指定索引值
listIterator(); //获取游标


注意:通过iterator对集合进行遍历的时候,然后通过集合的方法进行修改,会引发修改异常,对象并发,不能同时进行。
如果删除,要使用Iterator的remove方法进行,从集合中删除引用。但是无法添加,所以我们使用List集合对象的listIterator方法
注意:系列表迭代器,允许程序员按任一方向遍历列表、迭代期间修改列表,并获得迭代器在列表中的当前位置。ListIterator 没有当前元素;
它的光标位置 始终位于调用 previous() 所返回的元素和调用 next() 所返回的元素之间。长度为 n 的列表的迭代器有 n+1 个可能的指针位置,
*/
import java.util.*;
public class ListDemo
{
public static void main(String[] args) 
{
ArrayList al = new ArrayList();
al.add("java1");
al.add("java2");
al.add("java3");
al.add("java4");
al.add("java5");
al.add("java6");


// 原集合
printArray("原集合:" + al);


//  在指定的位置添加元素
al.add(1,"java9");


// 删除指定的元素
al.remove(1);


/*
listIterator方法()
*/
System.out.println("ListIterator:");
ListIterator pLit = al.listIterator();
System.out.println("hasPrevious:" + pLit.hasPrevious());
while(pLit.hasNext())
{
Object obj = pLit.next();
//pLit.remove(); //与Iterator的remove同时存在,会报错,对象并发错误。
System.out.print(pLit.next());
}




// 设置指定位置的元素
al.set(1,"我是javaer");


//取得指定位置的元素
String s=al.get(0).toString();
System.out.println("取出元素:" + s);
printArray("操作后:" + al);


//遍历取出所有
System.out.println("通过iterator取出:");
Iterator pIt = al.iterator();
while(pIt.hasNext())
{
Object obj = pIt.next();
//al.add("java008"); //Exception in thread "main" java.util.ConcurrentModificationException
pIt.remove();
System.out.print(pIt.next() + ",");
}
System.out.println();
//通过for循环遍历大小
System.out.println("用size取出:");
for(int i=0;i<al.size();i++)
{
System.out.print(al.get(i) + ",");
}


System.out.println();
//获取集合的子集List
int index = al.indexOf("java6");
List subList = al.subList(0,index);
System.out.println("集合子集:" + subList);
}


public static void printArray(Object obj)
{
System.out.println(obj);
}
}
原文地址:https://www.cnblogs.com/dengshiwei/p/4258506.html