プログラミング 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


関連記事

【Spring】バリデーション時に、入力値を保持する方法

登録画面で「登録」ボタンを押した後、 バリデーションで引っ掛かってエラーになっても 入力内容を画面に保持して置く方法についてです。 テンプレートエンジンは、Tymeleafを使用しています。 方法とし …

【Java】オブジェクト指向の練習題材(会計オブジェクト)

前回記事、オブジェクト指向とは何なのかを簡単に説明してみるの練習題材です。 ここでは3つのオブジェクトを作成していきます。 – 会計オブジェクト:会計金額の算出 – 請求書オブ …

【JdbcTemplate】Queryの書き方(SELECT文)

JdbcTemplateでQueryを書く方法です! (SELECT文で、1件・複数件を取得するケース)   前提 以下のテーブル(users)を持ち、格納するのはUserクラスという想定で …

【Java】ArrayListの最長文字列を取得する簡単な方法

(追記)2020/08/19 1. Listが空の場合(NoSuchElementException)に対応しました。 2. Nullが含まれていた場合、空文字として扱うように修正しました。 Arra …

MySQL-タイムゾーン設定すると起動しなくなる原因と対処方法

MySQLのタイムゾーン設定をすると、XAMPPでMySQLが起動できなる原因と対処法です。   原因 原因は、MySQL(MariaDB)は最初から日本語設定が入ってないためです。 def …

記事を探す

SpringFramworkの良書

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

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