List是Collection的子接口,实现List接口的容器类中的元素是有顺序的可重复的,这些元素都对应一个整形的序号记载它在容器中的位置。跟数组相似,但是List可以随便改变大小,但是数组不可以。
List方法使用例子:
public class ListTest {
public static void main(String[] args){
List l1 = new LinkedList();
for(int i=0;i<6;i++){
l1.add("a"+i);
}
System.out.println(l1);
System.out.println((String)l1.get(2));//get()方法返回值为Object类型
l1.add(4, "a400");// 添加后,其后元素往后移
System.out.println(l1);
l1.set(3, "a300");//set方法的返回值为Object,即返回被set的索引原来
//对应的value,将新的value设置进去
System.out.println(l1);
l1.add("hhh");//将此value添加到List的最后
System.out.println(l1);
l1.remove(3);
System.out.println(l1);
System.out.println(l1.indexOf("a4"));//返回list中该元素第一次出现的索引
}
}
类java.util.Collections提供了一些静态方法实现了基于List容器的常用算法。
public class CollectionsTest {
public static void main(String[] args) {
List l1 = new LinkedList();
for(int i=0;i<11;i++){
l1.add("a"+i);
}
System.out.println(l1);
Collections.shuffle(l1);//随机排序
System.out.println(l1);
Collections.reverse(l1);//逆序
System.out.println(l1);
Collections.sort(l1);//按照自然排序法进行排序,List中的元素必须继承自Comparable接口。
System.out.println(l1);
System.out.println(Collections.binarySearch(l1, "a8"));//折半查找,返回元素的位置
}
}