プログラミング Java

【Java】LinkedHashSetの使い方(挿入順を保持するSet)

投稿日:2020年6月23日 更新日:

LinkedHashSetはHashSetのサブクラスであり、同じメソッドが実装されています。
メソッドの使い方であればHashSetと同じなので、HashSetの使い方を参照下さい。
 ↓
【Java】HashSetの使い方いろいろ

HashSetとの違い

前述のとおり、メソッドは同じです。
違いは、順序を保つことです。

HashSetでは中に入れた値の順序は維持されませんが、
LinkedHashSetでは入れた順で維持されます。

順序維持の例示

HashSetとの違いで確認していきます。
HashSet、LinkedHashSetに、同じ文字列を同じ順序(A,B,C)で格納します。
その後、追加のCollectionを格納します。
・ArrayList(文字列の1,2,3)
・HashMap(文字列のあ,い,う)

LinkedHashSetは値の挿入順を維持していており、
HashSetはバラバラになっていることがわかります。

LinkedHashSetの使い道

つまり、挿入した値の順序を維持したSetを作りたい場合に使うものです。
念押しですが、Setは重複した値を持ちません。
なので、正確に言うと「挿入順序を維持した重複のないリスト」を作るために用います。

-プログラミング, Java
-,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA


関連記事

CompsiteパターンでHTMLタグを実現するには?

Compositeパターンに応用できそうなものとして、 HTMLタグなんかいいかと思いコーディングしてみました。   クラス図   説明 Compositeパターンは再帰構造を実現 …

【SpringBootチュートリアル】#5~ 登録画面の作成

概要 共通ヘッダーの「新規登録」リンクから遷移する、書籍情報登録画面を作成します。 遷移できるようにControllerの作成と、遷移先である画面をHTMLで作成していきます。   Formクラスの作 …

オブジェクト指向がわかるようになるためにする3つのこと

オブジェクト指向がいまいちわからない人向けに、 オブジェクト指向でプログラミングできるようになるまでのステップを以下にまとめました。   Javaでプログラミングする Javaはオブジェクト …

Facadeパターンの使い道をコードとクラス図で説明します。

Facadeパターンはどんな役に立つか? 簡単にいうと、複数の処理のまとめ役。 なので、依頼1つでいろんな仕事をやってくれる点で役に立つ。 Facadeパターンの要件 Facadeクラスはあくまでサブ …

オブジェクト指向とは何なのかを簡単に説明してみる

オブジェクト指向とは何なのか? これを私の理解を元に、ごくごく簡単に説明してみたいと思います。   オブジェクト指向とは? オブジェクト指向とは何かを説明するために、 「オブジェクト」と「指 …

記事を探す

SpringFramworkの良書

■おすすめ教材
Javaの基本を学んだ人が、次のステップとして読む本(中級者向け)

※SpringはJavaのFrameworkの1つです。
変更のしやすさ、保守性の高さが特徴です。