English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
このチュートリアルでは、JavaのListインターフェースとそのメソッドについて学びます。
Javaでは、Listインターフェースは並列な集合であり、要素を順序付けして格納およびアクセスを許可します。それは集合インターフェースを拡張しています。
Listはインターフェースであるため、その中からオブジェクトを作成することはできません。
Listインターフェースの機能を使用するために、以下のクラスを使用できます:
これらのクラスはCollectionsフレームワークで定義され、Listインターフェースを実装しています。
Javaでは、Listの機能を使用するにはjava.util.Listパッケージをインポートする必要があります。
//ListのArrayList実装 List<String> list1 新しいArrayList<>()をインスタンス化します。 // ListのLinkedList実装 List<String> list2 新しいLinkedList<>()をインスタンス化します。
ここでは、ArrayListおよびLinkedListクラスのオブジェクトlistを既に作成しています1およびlist2。これらのオブジェクトは、今やListインターフェースの機能を使用できます
Listインターフェースには、Collectionインターフェースのすべてのメソッドが含まれています。これは、CollectionがListのスーパーオブジェクトであるためです
Collectionインターフェースでは、いくつかの一般的なListインターフェースメソッドも提供されています:
add() - 要素をリストに追加します
addAll() - 1つのリストのすべての要素を別のリストに追加します
get() - リストからランダムにアクセスするのに役立ちます
iterator() - イテレーターオブジェクトを返します。このオブジェクトを使用してリストの要素を順序にアクセスできます
set() - リストの要素を変更します
remove() - リストから1つの要素を削除します
removeAll() - リストからすべての要素を削除します
clear() - リストからすべての要素を削除します(removeAll()よりも効率が良くなります)
size() - リストの長さを返します
toArray() - リストを配列に変換します
contains() - リストに指定された要素が含まれている場合、trueを返します
1.ArrayListクラスを実現します
import java.util.List; import java.util.ArrayList; class Main { public static void main(String[] args) { //ArrayListクラスを使用してリストを作成します List<Integer> numbers = new ArrayList<>(); //要素をリストに追加します numbers.add(1); numbers.add(2); numbers.add(3); System.out.println("リスト: 「" + numbers); //リストから要素をアクセスします int number = numbers.get(2); System.out.println("アクセスする要素: 「" + number); //リストから要素を削除します int removedNumber = numbers.remove(1); System.out.println("要素の削除: " + removedNumber); } }
出力結果
List: [1, 2, 3] 要素のアクセス: 3 要素の削除: 2
ArrayListについてもっと詳しく知りたい場合は、以下を訪問してくださいJava ArrayList。
2.LinkedListクラスを実現します
import java.util.List; import java.util.LinkedList; class Main { public static void main(String[] args) { //LinkedListクラスを使用してリストを作成します List<Integer> numbers = new LinkedList<>(); //要素をリストに追加します numbers.add(1); numbers.add(2); numbers.add(3); System.out.println("リスト: 「" + numbers); //リストから要素をアクセスします int number = numbers.get(2); System.out.println("アクセスする要素: 「" + number); //indexOf()メソッドを使用します int index = numbers.indexOf(2); System.out.println("位置"3の要素は「" + index); //リストから要素を削除します int removedNumber = numbers.remove(1); System.out.println("要素の削除: " + removedNumber); } }
出力結果
List: [1, 2, 3] 要素のアクセス: 3 位置3の要素は 1 要素の削除: 2
LinkedList についてもっと詳しく知りたい場合は、以下のURLにアクセスしてくださいJava LinkedList。
List インターフェースと Set インターフェースは Collection インターフェースを継承していますが、いくつかの違いがあります。
List には重複の要素を含むことができますが、Set には重複の要素を持つことはできません。
List 内の要素はある順序で保存されていますが、Set 内の要素は数学の集合のようにグループで保存されています。
今では List が何かを知っていますので、次のチュートリアルでは ArrayList クラスと LinkedList クラスの実装について詳しく説明します。