Java で LinkedHashSet から最小または最大の要素を見つけるにはどうすればよいですか?

王林
リリース: 2023-09-12 23:37:02
転載
1200 人が閲覧しました

Java で LinkedHashSet から最小または最大の要素を見つけるにはどうすればよいですか?

LinkedHashSet は、Set インターフェイスを実装し、HashSet クラスを拡張する Java Collection Framework のクラスです。リンクリスト型のコレクションクラスです。オブジェクトを挿入された順序で保存し、返します。 LinkedHashSet コレクションから最大要素と最小要素を見つけることは、試験や面接でもよく聞かれる一般的なタスクの 1 つです。この記事では、特定のタスクを実行するためのいくつかの方法を検討します。

LinkedHashSetから最小要素と最大要素を取得する手順

LinkedHashSet コレクションから最大要素と最小要素を見つけるには、次のメソッドを使用します。

  • LinkedHashSet を反復処理する

  • LinkedHashSet を TreeSet に変換することにより

  • min() メソッドと max() メソッドを使用する

1つずつ説明しましょう。

反復を使用する

for-each ループを使用すると、LinkedHashSet コレクションの要素を反復処理して、最大の要素と最小の要素を取得できます。

例 1

次の例は、LinkedHashSet から最大要素と最小要素を見つけるための for-each ループの実際の実装を示しています。

###方法###

    最初のステップは、LinkedHashSet クラスの機能を使用できるように、「java.util」パッケージをインポートすることです。
  • 次に、LinkedHashSet コレクションを作成し、組み込みメソッド「add()」を使用していくつかの要素を保存します。
  • 2 つの整数型変数を初期化して、最大要素と最小要素を格納します。
  • 次に、for-each を作成し、その中に 2 つの if ブロックを定義します。最初の if ブロックは最小の要素をチェックし、2 番目の if ブロックは最大の要素をチェックします。
  • 最後に結果を出力して終了します。
  • リーリー
  • 出力
import java.util.*;
public class MinMax {
   public static void main(String[] args) {
      // Creating a LinkedHashSet
      LinkedHashSet<Integer> lHset = new LinkedHashSet<>();
      // Adding elements to the set
      lHset.add(57);
      lHset.add(68);
      lHset.add(79);
      lHset.add(88);
      lHset.add(95);
      // to store the maximum and minimum element
      Integer minElem = null;
      Integer maxElem = null;
      // using for-each loop to find minimum and maximum elements
      for (Integer element : lHset) { 
         // checking minimum element
         if (minElem == null || element < minElem) {
            minElem = element;
         }
         // checking maximum element
         if (maxElem == null || element> maxElem) {
            maxElem = element;
         }
      }
      System.out.println("List of elements from LinkedHashSet: " + lHset);
      System.out.println("The Minimum element from LinkedHashSet: " + minElem);
      System.out.println("The Maximum element from LinkedHashSet: " + maxElem);
   }
}
ログイン後にコピー

ツリーセットを使用する

TreeSet は、NavigableSet インターフェイスを実装する Java コレクション フレームワークのクラスでもあります。セットの要素をツリー構造でソートされた方法で保存するため、LinkedHashSet から最大要素と最小要素を取得する場合に最適です。

例 2

次の例では、TreeSet を使用して LinkedHashSet から最小要素と最大要素を取得します。

###方法###

前の例の最初の 2 つの手順に従います。

  • 次に、最初の要素が最小になり、最後の要素が最大になるように、LinkedHashSet セットを TreeSet に変換します。

  • 次に、組み込みメソッド「first()」を使用して最小の要素を取得し、「last()」を使用して最大の要素を取得します。

  • リーリー

    出力

    List of elements from LinkedHashSet: [57, 68, 79, 88, 95]
    The Minimum element from LinkedHashSet: 57
    The Maximum element from LinkedHashSet: 95
    
    ログイン後にコピー
  • min() メソッドと max() メソッドを使用する

LinkedHashSet から最小要素と最大要素を取得する簡単な方法は、組み込みメソッド "min()" と "max()" を使用することです。 「min()」メソッドは LinkedHashSet 内の最小の要素を返し、「max()」メソッドは最大の要素を返します。どちらの方法も「セット」で機能することに注意してください。

例 3

次の例では、LinkedHashSet コレクションを反復して変換する代わりに、「min()」メソッドと「max()」メソッドを使用して、その最小要素と最大要素を見つけます。

リーリー

出力

import java.util.*;
public class MinMax {
   public static void main(String[] args) {
      // Creating a LinkedHashSet
      LinkedHashSet<Integer> lHset = new LinkedHashSet<>();
      // Adding elements to the set
      lHset.add(57);
      lHset.add(68);
      lHset.add(79);
      lHset.add(88);
      lHset.add(95);
      System.out.println("List of elements from LinkedHashSet: " + lHset);
      // converting LinkedHashSet to TreeSet 
      TreeSet<Integer> newTree = new TreeSet<>(lHset);
      // getting the minimum element
      System.out.println("The Minimum element from LinkedHashSet: " + newTree.first());
      // getting the maximum element
        System.out.println("The Maximum element from LinkedHashSet: " + newTree.last());
   }
}
ログイン後にコピー
###結論は###

この記事ではまず LinkedHashSet について紹介します。次のセクションでは、LinkedHashSet から最小要素と最大要素を見つける 3 つの方法について説明します。さらに、TreeSet の基本と、「min()」、「max()」、「first()」、「last()」などの Java Collections Framework のいくつかの組み込みメソッドについても学びました。

以上がJava で LinkedHashSet から最小または最大の要素を見つけるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:tutorialspoint.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!