インターフェースと実装クラスのリスト(収集は続く)

インターフェースと実装クラスのリスト(収集は続く)

リストはコレクションインターフェイスを継承し、3つの実装クラスがあります

配列リスト

配列リスト、データは配列に格納されます。

ArrayListは可変長配列を実装し、メモリに連続スペースを割り当てます。要素をトラバースし、要素にランダムにアクセスする効率は比較的高い

LinkedList

LinkedListはリンクリストストレージを使用します。要素の挿入と削除時の高効率

ベクター

配列リスト、同期ロックの追加、スレッドセーフ

ArrayListの一般的なメソッド

add(int index、E element)

get(int index)

indexOf(Object o)
lastIndexOf(Object o)

remove(int index)指定された位置にある要素を削除して返します

removeRange(int fromIndex、int toIndex)指定された範囲の要素を削除します(サブクラス継承の使用)

set(int index、E element)

package day2;

import java.util.ArrayList;
import java.util.List;

public class ArrayListDemo {
    
    
    public static void main(String[] args) {
    
    
        //List list=new ArrayList();

        ArrayList arrayList=new ArrayList();
                    arrayList.add("a");//默认情况下向末尾添加
                    arrayList.add("b");
                    arrayList.add(0,"x"); //装满之后  扩容到原来的1.5倍
        System.out.println(arrayList);
        System.out.println(arrayList.get(2));
        System.out.println(arrayList.indexOf("b"));
        arrayList.add(1,"s");
        arrayList.sort(new StringC());



    }
}

package day2;

import java.util.ArrayList;
import java.util.List;

public class ArrayRange extends ArrayList {
    
    
    public static void main(String[] args) {
    
    
        List list=new ArrayList(15);//有参构造方法
        list.add("a");
        list.add("s");
        list.add("d");
        list.add("f");
        list.add("h");

        System.out.println(list.subList(1,3));

    }

}

LinkedListの一般的なメソッド

add(int index、Object element)

addFirist(オブジェクト要素)

addLast(オブジェクト要素)

removeFirst()

removeLast()

remove(int index)

getFirst()

getLast()

package day2;

import java.util.LinkedList;

public class LinkedListDemo {
    
    
    public static void main(String[] args) {
    
    
        LinkedList list=new LinkedList();
        list.add("a");
        list.add("s");
        list.add("d");
        list.add("f");
        list.add("g");
        list.addFirst("1");
        list.addLast("2");

        System.out.println(list.get(2));
        System.out.println(list.getFirst());
        System.out.println(list.getLast());


        System.out.println(list);
    }
}

package day3;

import java.util.Vector;

public class VectorDemo {
    
    
    public static void main(String[] args) {
    
    
        //底层也是数组的实现,线程安全的
        Vector v=new Vector();
                v.add("a");
                v.add("a");
                v.add("s");
                v.add("d");
                v.add("x");
                v.add("c");
        System.out.println(v);
    }
}

おすすめ

転載: blog.csdn.net/ZJ_1011487813/article/details/110204318