溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

java中List集合及其實(shí)現(xiàn)類(lèi)的方法

發(fā)布時(shí)間:2020-10-15 17:50:52 來(lái)源:億速云 閱讀:184 作者:小新 欄目:編程語(yǔ)言

這篇文章給大家分享的是有關(guān)java中List集合及其實(shí)現(xiàn)類(lèi)的方法的內(nèi)容。小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧。

List集合_List接口介紹

特點(diǎn)

1).有序的;

2).可以存儲(chǔ)重復(fù)元素;

3).可以通過(guò)索引訪問(wèn);

List<String> list = new ArrayList<>();
       list.add("張無(wú)忌");
       list.add("張三豐");
       list.add("章子怡");
       list.add("章子怡");//OK的,可以添加
         for(String s : list){
           System.out.println(s);//有序的
      }

方法

繼承了Collection接口的所有方法,并且又有很多自己的方法

void    add(String item) 
          向滾動(dòng)列表的末尾添加指定的項(xiàng)。
 void    add(String item, int index) 
          向滾動(dòng)列表中索引指示的位置添加指定的項(xiàng)。
 void    addActionListener(ActionListener l) 
          添加指定的動(dòng)作偵聽(tīng)器以從此列表接收動(dòng)作事件。
 void    addItemListener(ItemListener l) 
          添加指定的項(xiàng)偵聽(tīng)器以接收此列表的項(xiàng)事件。
 void    addNotify() 
          創(chuàng)建列表的同位體。
 void    deselect(int index) 
          取消選擇指定索引處的項(xiàng)。
 AccessibleContext
getAccessibleContext() 
          獲取與此 List 關(guān)聯(lián)的 AccessibleContext。
 ActionListener[]
getActionListeners() 
          返回已在此列表上注冊(cè)的所有動(dòng)作偵聽(tīng)器的數(shù)組。
 String
getItem(int index) 
          獲取與指定索引關(guān)聯(lián)的項(xiàng)。
 int    getItemCount() 
          獲取列表中的項(xiàng)數(shù)。
 ItemListener[]
getItemListeners() 
          返回已在此列表上注冊(cè)的所有項(xiàng)偵聽(tīng)器的數(shù)組。
 String[]
getItems() 
          獲取列表中的項(xiàng)。
<T extends EventListener> 
T[]
    getListeners(Class<T> listenerType) 
          返回目前已在此 List 上注冊(cè)為 FooListener 的所有對(duì)象的數(shù)組。
 Dimension
getMinimumSize() 
          確定此滾動(dòng)列表的最小大小。
 Dimension
getMinimumSize(int rows) 
          獲取具有指定行數(shù)的列表的最少維數(shù)。
 Dimension
getPreferredSize() 
          獲取此滾動(dòng)列表的首選大小。
 Dimension
getPreferredSize(int rows) 
          獲取具有指定行數(shù)的列表的首選維數(shù)。
 int    getRows() 
          獲取此列表中的可視行數(shù)。
 int    getSelectedIndex() 
          獲取列表中選中項(xiàng)的索引。
 int[]    getSelectedIndexes() 
          獲取列表中選中的索引。
 String
getSelectedItem() 
          獲取此滾動(dòng)列表中選中的項(xiàng)。
 String[]
getSelectedItems() 
          獲取此滾動(dòng)列表中選中的項(xiàng)。
 Object[]
getSelectedObjects() 
          獲取對(duì)象數(shù)組中此滾動(dòng)列表的選中項(xiàng)。
 int    getVisibleIndex() 
          獲取上次由 makeVisible 方法使其可視的項(xiàng)的索引。
 boolean    isIndexSelected(int index) 
          確定是否已選中此滾動(dòng)列表中的指定項(xiàng)。
 boolean    isMultipleMode() 
          確定此列表是否允許進(jìn)行多項(xiàng)選擇。
 void    makeVisible(int index) 
          使指定索引處的項(xiàng)可視。
protected  String
paramString() 
          返回表示此滾動(dòng)列表狀態(tài)的參數(shù)字符串。
protected  void    processActionEvent(ActionEvent e) 
          處理發(fā)生在此列表上的動(dòng)作事件,方法是將這些事件指派給所有已注冊(cè)的 ActionListener 對(duì)象。
protected  void    processEvent(AWTEvent e) 
          此滾動(dòng)列表的進(jìn)程事件。
protected  void    processItemEvent(ItemEvent e) 
          處理發(fā)生在此列表上的項(xiàng)事件,方法是將這些事件指派給所有已注冊(cè)的 ItemListener 對(duì)象。
 void    remove(int position) 
          從此滾動(dòng)列表中移除指定位置處的項(xiàng)。
 void    remove(String item) 
          從列表中移除項(xiàng)的第一次出現(xiàn)。
 void    removeActionListener(ActionListener l) 
          移除指定的動(dòng)作偵聽(tīng)器,以便不再?gòu)拇肆斜斫邮談?dòng)作事件。
 void    removeAll() 
          從此列表中移除所有項(xiàng)。
 void    removeItemListener(ItemListener l) 
          移除指定的項(xiàng)偵聽(tīng)器,以便不再?gòu)拇肆斜斫邮枕?xiàng)事件。
 void    removeNotify() 
          移除此列表的同位體。
 void    replaceItem(String newValue, int index) 
          使用新字符串替換滾動(dòng)列表中指定索引處的項(xiàng)。
 void    select(int index) 
          選擇滾動(dòng)列表中指定索引處的項(xiàng)。
 void    setMultipleMode(boolean b) 
          設(shè)置確定此列表是否允許進(jìn)行多項(xiàng)選擇的標(biāo)志。

api

常用方法(以下幾個(gè)方法都是List接口中特有的方法)

1).增:public void add(int index,E e):將e添加到當(dāng)前集合的index位置。

2).刪:public E remove(int index):刪除index位置上的元素,并將刪除的元素返回。

3).改:public E set(int index,E element):將element替換index位置上的元素,并將原index位置上的元素返回。

4).查:public E get(int index):獲取index位置上的元素。

示例代碼:

public static void main(String[] args) {
    //List集合中增加自己的add方法,add(int index,E e);
    List<String> list=new ArrayList<>();

    list.add("aaaa");
    list.add("bbbb");
    list.add("cccc");
    list.add(1,"dddd");

    System.out.println(list);
    //刪除指定索引的元素,并將刪除的元素返回
    String removeStr=list.remove(2);
    System.out.println(removeStr);
    System.out.println(list);

    //修改指定索引位置上的元素set(int index,E e),并將原index位置上的元素返回
    String setStr=list.set(2,"ffff");
    System.out.println(setStr);
    System.out.println(list);

    //通過(guò)索引獲取指定索引上的元素
    String getStr=list.get(2);
    System.out.println("索引為3的元素為:"+getStr);
    System.out.println(list);
}

實(shí)現(xiàn)List接口的常用類(lèi)_ArrayList

1).list接口常用實(shí)現(xiàn)類(lèi)

java中List集合及其實(shí)現(xiàn)類(lèi)的方法

2).ArrayList

特點(diǎn):

查詢快----使用索引

增刪慢---需要擴(kuò)容,移位

圖解:

java中List集合及其實(shí)現(xiàn)類(lèi)的方法

方法:

無(wú)特有方法

案例

public static void main(String[] args) {
    //List集合中增加自己的add方法,add(int index,E e);
    ArrayList<String> list=new ArrayList<>();

    list.add("aaaa");
    list.add("hhhh");
    list.add("cccc");
    list.add(1,"dddd");
    System.out.println(list);
    //刪除指定索引的元素,并將刪除的元素返回
    String removeStr=list.remove(2);
    System.out.println(removeStr);
    System.out.println(list);
    //修改指定索引位置上的元素set(int index,E e),并將原index位置上的元素返回
    String setStr=list.set(2,"ffff");
    System.out.println(setStr);
    System.out.println(list);
    //通過(guò)索引獲取指定索引上的元素
    String getStr=list.get(2);
    System.out.println("索引為3的元素為:"+getStr);
    System.out.println(list);
}

3).LinkedList

特點(diǎn)

使用鏈表實(shí)現(xiàn)

增刪快,查詢慢

圖解

java中List集合及其實(shí)現(xiàn)類(lèi)的方法

方法

新增了一些方法,可以模擬棧、隊(duì)列:

1).public void push(Object o):壓棧    等同于addFirst(E e) ,將指定元素添加到此集合的開(kāi)頭
2).public E pop():彈棧--如果沒(méi)有元素,會(huì)拋異常;

public E poll():彈棧--如果沒(méi)有元素,會(huì)返回null【建議使用】

案例:

public class Demo {
    public static void main(String[] args) {
        LinkedList<String> list = new LinkedList<>();
        list.push("孫悟空");
        list.push("豬八戒");
        list.push("沙和尚");
        System.out.println(list);

        while (list.size() > 0) {
            System.out.println("彈出一個(gè):" + list.poll());
            System.out.println("集合大?。?quot; + list.size());
        }
    }
}

感謝各位的閱讀!關(guān)于java中List集合及其實(shí)現(xiàn)類(lèi)的方法就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI