1. 实例化
List<String> str1=new ArrayList<String>();
2. add(int index,Object obj)和set(int index,Object obj)区别
Add(int index,Object obj)是指向指定索引位置添加对象
Set(int index,Object obj)是指修改指定索引位置的对象
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class Main {
public static void main(String[] args) {
List<String> str1=new ArrayList<String>();
String a="A",b="B",c="C",d="D",e="E";
str1.add(a);
str1.add(e);
str1.add(d); // A E D
str1.set(1,b);//将索引位置为1的对象修改为b A B D
str1.add(2,c);//将对象c添加到索引位置为2的位置 A B C D
// -------方法一------通过Iterator遍历对象
// Iterator<String> it=str1.iterator();
// while(it.hasNext())
// {
//
// System.out.println(it.next());// A B C D
//
// }
// --------方法二-----通过for循环,利用get(int index)方法获得指定索引位置的对象
for(int i=0;i<str1.size();i++)
{
System.out.println(str1.get(i));
}
}
}
3.
indexOf(Object obj)和lastIndexOf(Object obj)的区别
indexOf(Object obj)是获得指定对象的最小的索引位置,
lastIndexOf(Object obj)是获得指定对象的最大的索引位置,
前提条件是指定的对象在List集合中具有重复的对象,否则如果在List集合中有且仅有一个指定的对象,则通过这两个方法获得的索引位置是相同的.
public class Main{
public static void main(String[] args) {
String a="A",b="B",c="C",d="D",repeat="repeat";
List<String> list=new ArrayList<String>();
list.add(a);//索引位置为0
list.add(repeat);//索引位置为1
list.add(b);//索引位置为2
list.add(repeat);//索引位置为3
list.add(repeat);//索引位置为4
System.out.println(list.indexOf(repeat));// 结果2
System.out.println(list.lastIndexOf(repeat));// 结果4
System.out.println(list.indexOf(b)); // 结果2
System.out.println(list.lastIndexOf(b)); // 结果2
}
}
4.
subList(int fromIndex, int toIndex)
在使用subList(int fromIndex, int toIndex)方法截取现有List集合中的部分对象生成新的List集合时,需要注意的是,新生成的集合中包含起始索引位置代表的对象,但是不包含终止索引位置代表的对象.
import java.util.ArrayList;
import java.util.List;
public class Main {
//List类的subList方法
public static void main(String[] args) {
int a=1,b=20,c=3;
List<Integer> list=new ArrayList<Integer>();
list.add(a);
list.add(b);
list.add(c);
list=list.subList(0,2);
for(int i=0;i<list.size();i++)
{
System.out.println(list.get(i));// 结果 1 20
}
}
}