java List集合接口的介紹和使用全面教程
一.關(guān)于List集合類的繼承關(guān)系圖
List接口繼承了Collection接口,而List接口下有三個(gè)重要的實(shí)現(xiàn)類:ArrayList,LinkedList,Vector

二.List接口的基本介紹
1.List接口是Collection接口的子接口
2.存入List集合中的元素是有序的(即添加順序和取出順序是一樣的)
public static void main(String[] args) {
List list = new ArrayList<>();
list.add("jack");
list.add(10);
list.add(true);
list.add("mary");
System.out.println("list="+list);//輸出結(jié)果為:list=[jack, 10, true, mary] 添加順序和取出順序是一樣的
}
3.List集合里的元素是可以重復(fù)存入的
public static void main(String[] args) {
List list = new ArrayList<>();
list.add("jack");
list.add(10);
list.add(true);
list.add("mary");
//可以放入重復(fù)的數(shù)據(jù)jack
boolean b = list.add("jack");
System.out.println(b);//輸出結(jié)果為:true
System.out.println("list="+list);//輸出結(jié)果為:list=[jack, 10, true, mary, jack]
}
4.List集合中的每一個(gè)元素都有自己對(duì)應(yīng)的順序索引,即支持索引(索引是從0開始)
public static void main(String[] args) {
List list = new ArrayList<>();
list.add("jack");
list.add(10);
list.add(true);
list.add("mary");
list.add("jack");
//獲取索引為2的元素,即第三個(gè)元素
Object o = list.get(3);
System.out.println(o);//輸出結(jié)果為:mary
}
5.List容器中的元素都對(duì)應(yīng)一個(gè)整數(shù)型的序號(hào)記載其在容器中的位置,可以根據(jù)序號(hào)取容器中的元素
6.JDK API中LIst接口的常用的實(shí)現(xiàn)類有:ArrayList,LinkedList,Vector
三.List接口的常用方法
由于List接口無(wú)法實(shí)例化,要想使用List接口的方法我們就用List的實(shí)現(xiàn)類ArrayList來(lái)演示它的常用方法
1.add(int index,Object o)方法:
在index位置插入o元素。(index表示下標(biāo),從0開始。o表示要插入的元素)
public static void main(String[] args) {
List list = new ArrayList<>();
list.add("張三");
list.add("李四");
list.add("王五");
//add(int index,Object o)方法的使用
list.add(1,"小明");
System.out.println("list="+list);//輸出結(jié)果為:list=[張三, 小明, 李四, 王五]
}2.addAll(int index,Collection c)方法:
在index位置插入多個(gè)元素。(index表示下標(biāo),從0開始。c表示實(shí)現(xiàn)了Collection接口的子類多可以放入。如果元素插入成功返回true,否則返回false)
public static void main(String[] args) {
List list = new ArrayList<>();
list.add("張三");
list.add("李四");
list.add("王五");
//addAll(int index,Collection c)方法的使用
List newList = new ArrayList<>();
newList.add("小明");
newList.add("小紅");
boolean b = list.addAll(1, newList);
System.out.println(b);//輸出結(jié)果:true
System.out.println("list="+list);//輸出結(jié)果:list=[張三, 小明, 小紅, 李四, 王五]
}3.get(int index)方法:
獲取下標(biāo)為index位置上的元素(index表示下標(biāo),從0開始。)
public static void main(String[] args) {
List list = new ArrayList<>();
list.add("jack");
list.add(10);
list.add(true);
list.add("mary");
list.add("jack");
//獲取索引為2的元素,即第三個(gè)元素
Object o = list.get(1);
System.out.println(o);//輸出結(jié)果為:10
}4.indexOf(Object o)方法:
查找o對(duì)象在集合中首次出現(xiàn)的位置,即下標(biāo)(如果沒有就返回-1)
public static void main(String[] args) {
List list = new ArrayList<>();
list.add("張三");
list.add("李四");
list.add("王五");
list.add("李四");
//indexOf(Object o)方法的使用
int index = list.indexOf("李四");
System.out.println(index);//輸出結(jié)果為:1
}5.lastIndexOf(Object o)方法:
查找o對(duì)象在集合中末次出現(xiàn)的位置,即下標(biāo)(如果沒有就返回-1)
public static void main(String[] args) {
List list = new ArrayList<>();
list.add("張三");
list.add("李四");
list.add("王五");
list.add("李四");
//lastIndexOf(Object o)方法的使用
int index = list.lastIndexOf("李四");
System.out.println(index);//輸出結(jié)果為:3
}6.remove(int index)方法:
移除index位置上的元素,并且返回此元素
public static void main(String[] args) {
List list = new ArrayList<>();
list.add("張三");
list.add("李四");
list.add("王五");
list.add("李四");
//remove(int index)方法的使用
Object o = list.remove(1);
System.out.println(o);//輸出結(jié)果為:李四
System.out.println("list="+list);//輸出結(jié)果為:list=[張三, 王五, 李四]
}7.set(int index,Object o)方法:
修改index位置上的元素為o,即為替換,并返回被修改的元素
public static void main(String[] args) {
List list = new ArrayList<>();
list.add("張三");
list.add("李四");
list.add("王五");
list.add("李四");
//set(int index,Object o)方法的使用
Object o = list.set(1, "小明");
System.out.println(o);//輸出結(jié)果為:李四
System.out.println("list="+list);//輸出結(jié)果為:list=[張三, 小明, 王五, 李四]
}8.subList(int fromIndex,int toIndex)方法:
返回從fromindex到toIndex位置上的集合(包括fromIndex位置但是不包括toIndex位置,即[formIndex,toIndex)。)
public static void main(String[] args) {
List list = new ArrayList<>();
list.add("張三");
list.add("李四");
list.add("王五");
list.add("李四");
//subList(int fromIndex,int toIndex)方法的使用
List newList = list.subList(1, 3);
System.out.println("newList="+newList);//輸出結(jié)果為:newList=[李四, 王五]
}四.List的三種遍歷方式
1.使用Iterator(迭代器)
public static void main(String[] args) {
List list = new ArrayList<>();
list.add("張三");
list.add("李四");
list.add("王五");
list.add("李四");
//使用Iterator(迭代器)遍歷
Iterator iterator = list.iterator();
while (iterator.hasNext()) {
Object o = iterator.next();
System.out.println(o);//遍歷完最終輸出結(jié)果為:張三 李四 王五 李四
}
}2.使用曾強(qiáng)for循環(huán)
List list = new ArrayList<>();
list.add("張三");
list.add("李四");
list.add("王五");
list.add("李四");
//使用曾強(qiáng)for循環(huán)遍歷
for (Object o : list) {
System.out.println(o);//遍歷完最終輸出結(jié)果為:張三 李四 王五 李四
}
}3.使用普通for循環(huán),即利用下標(biāo)遍歷(下標(biāo)從0開始)
public static void main(String[] args) {
List list = new ArrayList<>();
list.add("張三");
list.add("李四");
list.add("王五");
list.add("李四");
//使用普通for循環(huán)遍歷
for (int i=0;i<list.size();i++){
System.out.println(list.get(i));//遍歷完最終輸出結(jié)果為:張三 李四 王五 李四
}
}以上就是java List集合接口的介紹和使用全面教程的詳細(xì)內(nèi)容,更多關(guān)于java List集合接口的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Java中的DelayQueue實(shí)現(xiàn)原理及應(yīng)用場(chǎng)景詳解
基于SpringMVC @RequestMapping的參數(shù)和用法
解決JAVA項(xiàng)目啟動(dòng)卡住,無(wú)任何異常信息的問(wèn)題
Java發(fā)送http請(qǐng)求的示例(get與post方法請(qǐng)求)

