Java コレクションのタイプ

WBOY
リリース: 2024-08-30 15:48:31
オリジナル
951 人が閲覧しました

Java コレクション タイプ (コレクション フレームワークとも呼ばれます) は、再利用可能なコレクション データ構造の実装に役立つ多くのインターフェイスとクラスを提供します。これらのコレクション型は、オブジェクトのグループを保存し、操作するためのアーキテクチャを提供します。 Java では、単一の単位として表現される個々のオブジェクトのグループは、オブジェクトのコレクションとして知られています。これに基づいて、JDK 1.2 には、すべてのコレクション クラスとインターフェイスを備えたコレクション フレームワークとタイプが導入されました。リスト、セット、マップ、キュー、スタックなどのすぐに使用できるコレクションの一部は、ユーザーが同種および異種のオブジェクトのグループを扱うときに発生する一般的な問題を解決します。コレクション型のトピックをさらに深く掘り下げて、すべての型の構文を理解しましょう。

無料ソフトウェア開発コースを始めましょう

Web 開発、プログラミング言語、ソフトウェア テスト、その他

Java コレクション型/フレームワークの階層

Java コレクションのタイプ

Java のコレクション型は複数のインターフェイスで構成され、各インターフェイスは特定のデータ型を格納するために使用されます

反復可能なインターフェース

これは、コレクション フレームワークのルート インターフェイスです。コレクション インターフェイスは Iterable インターフェイスを拡張します。したがって、すべてのクラスとインターフェイスはこのインターフェイスを実装します。これにはイテレータである抽象メソッドが 1 つだけ含まれています。

構文:

Iterator iterator();
ログイン後にコピー

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

これは反復可能なインターフェイスを拡張し、コレクション フレームワークのすべてのクラスによって実装されます。これには、データの削除、データの追加、データのクリアなど、すべてのコレクションにあるすべてのメソッドが含まれています。

リストインターフェイス

これは、Collection インターフェイスの子インターフェイスであり、データの順序付けされたコレクションを保存するために使用されるリスト型データ専用であり、重複も許可されます。リスト インターフェイスは、Vector、Array List、Stack などのさまざまなクラスによって実装されます。これらすべてのサブクラスがリストを実装するため、ユーザーはリスト オブジェクトをインスタンス化できます。

構文:

List<T> array_list = new ArrayList<>();
List<T> linked_list = new LinkedList<>();
List<T> vector = new Vector<>();
ログイン後にコピー

「T」はオブジェクトのタイプです。

配列リスト

Java で動的配列を提供します。オブジェクトがコレクションから削除された場合にコレクションが拡大または縮小すると、配列リストのサイズが増加します。 Java では、配列リストはランダムにアクセスできるため、プリミティブ型には使用できません。そのような場合はラッパー クラスが必要になります。構文は上に示されています。

リンクされたリスト

このクラスは、リンク リスト データ構造の実装です。これは、要素が連続的に格納されず、各要素がデータ部分とアドレス部分を持つ個別のオブジェクトである線形データ構造です。要素はアドレスとポインターを使用してリンクされ、各要素はノードとして知られています。構文は上に示されています。

ベクトル

このクラスは動的配列を提供します。標準の配列よりも遅くなりますが、多くの操作が必要なプログラムでは役立ちます。配列リストと似ていますが、ベクトルは同期されますが、配列リストは同期されません。構文は上に示されています。

スタック

このクラスはスタック データ構造をモデル化および実装し、後入れ先出しの基本原則に基づいています。このクラスは、基本的なプッシュ ポップ操作に加えて、空、ピーク、検索機能も提供します。また、Vector のサブクラスとして参照することもできます。

構文:

Stack<T> stack = new Stack<>();
ログイン後にコピー

キューインターフェイス

このインターフェースは、キューラインに似た先入れ先出し順序を維持します。これは、要素の順序が重要なすべての要素の保存専用です。また、Deque、Priority Queue、Array Queue などのさまざまなクラスで構成されます。すべてのサブクラスが queue を実装しているため、ユーザーは queue オブジェクトをインスタンス化できます。

構文:

Queue<T> array_queue = new ArrayQueue<>();
Queue<T> priority_queue = new PriorityQueue<>();
ログイン後にコピー

優先キュー

これは、オブジェクトがその優先度に基づいて、つまり優先度ヒープに基づいて処理されることになっている場合に使用されます。優先キュー内の要素は、自然な順序に従って、または Comparator を使用して順序付けされます。構文は上記のとおりです。

配列キュー

このクラスはフレームワークに実装されており、ユーザーはサイズ変更可能な配列を持つことができます。これは特別な種類の配列の 1 つで、ユーザーがキューの両側から要素を削除または追加できるようにします。制限はなく、必要に応じて拡張されます。構文は上に示されています。

Deque インターフェイス

このインターフェイスは、Queue データ構造のわずかなバリエーションです。要素を両端に追加したり両端から削除したりできるため、両端キューとも呼ばれます。このインターフェイスは ArrayDeque クラスをインスタンス化します。

構文:

Deque<T> deque = new ArrayDeque<>();
ログイン後にコピー

Set Interface

This class is inherent implementation for hash table data structure. Objects that are inserted into HashSet do not provide any guarantee that elements will be inserted in the same order. Objects are inserted based on hashcode and allow insertion of NULL elements too.

Syntax:

HashSet<T> hashset = new HashSet<>();
ログイン後にコピー

Linked Hash Set

It is much similar to Hash Set but uses a double linked list to store data by retaining the order of elements

Syntax:

LinkedHashSet<T> linked_hashset = new LinkedHashSet<>();
ログイン後にコピー

Sorted Set Interface

This interface is much similar to Set Interface. It has extra methods which maintain the order of elements. Interface is implemented by instantiating is Tree Set.

Syntax:

SortedSet<T> sorted_Set = new TreeSet<>();
ログイン後にコピー

Tree Set

This class uses a Tree for storage. Ordering of elements is maintained by using natural ordering else an external comparator is required.

Syntax:

TreeSet<T> tree_set = new treeSet<>();
ログイン後にコピー

Map Interface

This interface, Map is a data structure with key-value mapping data. It does not support duplicates because the same key cannot have multiple mappings. Map Interface is implemented by classes like Hash Map, Tree Map, etc.

Syntax:

Map<T> hash_map = new HashMap<>();
Map<T> tree_map = new TreeMap<>();
ログイン後にコピー

Hash Map

It provides a basic implementation of Java Map interface. To access a value in Hash Map, key is to be known. There is a technique of converting larger strings to small strings

Syntax:

HashMap<T, T> hashmap = new HashMap<T, T>();
ログイン後にコピー

Conclusion

With this, we conclude our topic “Java Collection Types”. We have seen various Interfaces and also the Iterable through which Interface came out. We have studied various interfaces such as Set, Java List, and Map interface and also covered subtypes of Java Collection Framework i.e. Stack, Queue, Deque. All the Syntax is given here which will be helpful to write logic and implement it programmatically. We have also seen the Java Collection Framework Hierarchy.

以上がJava コレクションのタイプの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート