English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Java 基础教程

Java プロセス制御

Java 配列

Java 面向オブジェクト(I)

Java 面向オブジェクト(II)

Java 面向オブジェクト(III)

Java 例外処理

Java リスト(List)

Java Queue(キュー)

Java Mapコレクション

Java Setコレクション

Java 入出力(I/O)

Java Reader/Writer

Java 他のトピック

Java コレクションフレームワーク

このチュートリアルでは、Javaコレクションフレームワークのさまざまなインターフェースを学びます。

Java コレクションフレームワークは、さまざまなデータ構造とアルゴリズムを実現するための一組のインターフェースとクラスを提供しています。

例えば、コレクションフレームワークのLinkedListクラスは、デュアルリンクリストデータ構造の実装を提供しています。

コレクションフレームワークのインターフェース

Javaコレクションフレームワークはさまざまなインターフェースを提供しています。これらのインターフェースには、コレクションに対して異なる操作を実行するための方法が含まれています。

後の章でこれらのインターフェース、そのサブインターフェース、および各クラスでの実装について詳しく説明します。このチュートリアルで一般的なインターフェースについて簡単に説明します。

Java Collection(コレクション)インターフェース

Collectionインターフェースはコレクションフレームワークの階層構造のルートインターフェースです。

Javaは直接Collectionインターフェースを実装していませんが、List、Set、Queueなどのサブインターフェースを実装しています。もっと詳しく知りたい場合は、以下を訪れてください:Java 集合インターフェース

集合フレームワークと Collectionインターフェース

集合フレームワークとCollectionインターフェースの間で混乱することがよくあります。

Collectionインターフェースは集合フレームワークのルートインターフェースです。このフレームワークには、MapとIteratorなどの他のインターフェースも含まれています。これらのインターフェースもサブインターフェースを持つ可能性があります。

Collection インターフェースのサブインターフェース

前述の通り、CollectionインターフェースはJavaクラスによって実装されるサブインターフェースを含んでいます。

Collectionインターフェースのすべてのメソッドは、そのサブインターフェースにも存在します。

以下の三つのインターフェースはCollectionインターフェースのサブインターフェースです:

1、List インターフェース

Listインターフェースは、配列のように要素を追加および削除できる順序付きの集合です。もっと詳しく知りたい場合は、以下を訪れてくださいJava List インターフェース

2、Set インターフェース

Setインターフェースは、数学の集合に似た異なる集合に要素を保存できるようにして、重複する要素を持たないことを許可しています。もっと詳しく知りたい場合は、以下を訪れてくださいJava Set インターフェース

3、Queue インターフェース

要素を以下のようにアクセスする場合先入先出の要了解更多情報は、以下を訪れてくださいJava キューインターフェース

Java Map インターフェース

Javaでは、Mapインターフェースが要素を以下のように保存し、アクセスできるようにしています。キー/値値の形式で保存されます。キーはユニークな名前であり、map内の特定の要素にアクセスするために使用されます。さらに、各キーには関連する値があります。もっと詳しく知りたい場合は、以下を訪れてくださいJava Map インターフェース

Java Iterator インターフェース

Javaでは、Iteratorインターフェースが集合の要素にアクセスするためのメソッドを提供しています。もっと詳しく知りたい場合は、以下を訪れてくださいJava Iterator インターフェース

なぜ集合フレームワークを使用するべきか?

Java集合フレームワークは直接使用できるさまざまなデータ構造とアルゴリズムを提供しています。これは二つの主要な利点があります:

  • これらのデータ構造とアルゴリズムを実装するために手動でコードを書く必要はありません。

  • 集合フレームワークの高度な最適化により、コードがより効率的になります。

さらに、集合フレームワークは特定のデータタイプに対して特定のデータ構造を使用できるようにしています。以下にいくつかの例があります。

  • データがユニークであることを望む場合、集合フレームワークが提供するSetインターフェースを使用できます。

  • キーとして/データを値対の形式で保存し、Mapインターフェースを使用できます。

  • ArrayListクラスは可変サイズの配列機能を提供しています。

例:ArrayList集合クラス

このチュートリアルを終える前に、collectionsフレームワークのArrayListクラス例として。

このArrayListクラスは、可変サイズの配列を作成できるように許可しています。このクラスはListインターフェース(Collectionインターフェースのサブインターフェース)を実装しています。

//Collections フレームワークは java.util パッケージで定義されています
import java.util.ArrayList;
class Main {
    public static void main(String[] args){
        ArrayList<String> animals = new ArrayList<>();
        //要素の追加
        animals.add("Dog");
        animals.add("Cat");
        animals.add("Horse");
        System.out.println("ArrayList: " + animals);
    }
}

出力

ArrayList: [Dog, Cat, Horse]

次のチュートリアルでは、サンプルを使用して collections フレームワーク(そのインターフェースとクラス)を詳しく説明します。