List集合_介绍常用方法
List集合
我們掌握了Collection接口的使用后,再來看看Collection接口中的子類,他們都具備那些特性呢?
接下來,我們一起學習Collection中的常用幾個子類(java.util.List集合、java.util.Set集合)。
List接口介紹
java.util.List接口繼承自Collection接口,是單列集合的一個重要分支,習慣性地會將實現了List接口的對象稱為List集合。在List集合中允許出現重復的元素,所有的元素是以一種線性方式進行存儲的,在程序中可以通過索引來訪問集合中的指定元素。另外,List集合還有一個特點就是元素有序,即元素的存入順序和取出順序一致。
看完API,我們總結一下:
List接口特點:
它是一個元素存取有序的集合。例如,存元素的順序是11、22、33。那么集合中,元素的存儲就是按照11、22、33的順序完成的)。
它是一個帶有索引的集合,通過索引就可以精確的操作集合中的元素(與數組的索引是一個道理)。
集合中可以有重復的元素,通過元素的equals方法,來比較是否為重復的元素。
tips:我們在基礎班的時候已經學習過List接口的子類java.util.ArrayList類,該類中的方法都是來自List中定義。
List接口中常用方法
List作為Collection集合的子接口,不但繼承了Collection接口中的全部方法,而且還增加了一些根據元素索引來操作集合的特有方法,如下:
-
public void add(int index, E element): 將指定的元素,添加到該集合中的指定位置上。
-
public E get(int index):返回集合中指定位置的元素。
-
public E remove(int index): 移除列表中指定位置的元素, 返回的是被移除的元素。
-
public E set(int index, E element):用指定元素替換集合中指定位置的元素,返回值的更新前的元素。
List集合特有的方法都是跟索引相關,我們在基礎班都學習過,那么我們再來復習一遍吧:
package com.learn.demo01.List;import java.util.ArrayList; import java.util.Iterator; import java.util.List;/*java.util.List接口 extends Collection接口List接口的特點:1.有序的集合,存儲元素和取出元素的順序是一致的(存儲123 取出123)2.有索引,包含了一些帶索引的方法3.允許存儲重復的元素List接口中帶索引的方法(特有)- public void add(int index, E element): 將指定的元素,添加到該集合中的指定位置上。- public E get(int index):返回集合中指定位置的元素。- public E remove(int index): 移除列表中指定位置的元素, 返回的是被移除的元素。- public E set(int index, E element):用指定元素替換集合中指定位置的元素,返回值的更新前的元素。注意:操作索引的時候,一定要防止索引越界異常IndexOutOfBoundsException:索引越界異常,集合會報ArrayIndexOutOfBoundsException:數組索引越界異常StringIndexOutOfBoundsException:字符串索引越界異常*/ public class Demo01List {public static void main(String[] args) {//創建一個List集合對象,多態List<String> list = new ArrayList<>();//使用add方法往集合中添加元素list.add("a");list.add("b");list.add("c");list.add("d");list.add("a");//打印集合System.out.println(list);//[a, b, c, d, a] 不是地址重寫了toString//public void add(int index, E element): 將指定的元素,添加到該集合中的指定位置上。//在c和d之間添加一個learnlist.add(3,"learn");//[a, b, c, learn, d, a]System.out.println(list);//public E remove(int index): 移除列表中指定位置的元素, 返回的是被移除的元素。//移除元素String removeE = list.remove(2);System.out.println("被移除的元素:"+removeE);//被移除的元素:cSystem.out.println(list);//[a, b, learn, d, a]//public E set(int index, E element):用指定元素替換集合中指定位置的元素,返回值的更新前的元素。//把最后一個a,替換為AString setE = list.set(4, "A");System.out.println("被替換的元素:"+setE);//被替換的元素:aSystem.out.println(list);//[a, b, learn, d, A]//List集合遍歷有3種方式//使用普通的for循環for(int i=0; i<list.size(); i++){//public E get(int index):返回集合中指定位置的元素。String s = list.get(i);System.out.println(s);}System.out.println("-----------------");//使用迭代器Iterator<String> it = list.iterator();while(it.hasNext()){String s = it.next();System.out.println(s);}System.out.println("-----------------");//使用增強forfor (String s : list) {System.out.println(s);}String r = list.get(5);//IndexOutOfBoundsException: Index 5 out-of-bounds for length 5System.out.println(r);} }?
總結
以上是生活随笔為你收集整理的List集合_介绍常用方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 数据结构_红黑树
- 下一篇: HashSet集合介绍