配列をセットに変換する

JavaJavaBeginner
今すぐ練習

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

はじめに

Java では、配列は同じ型のデータを格納するインデックスベースのデータ構造であり、セットは一意の要素のコレクションです。Java で配列をセットに変換するプロセスは、重複する要素が不要な場合に特に一般的なユースケースです。この実験では、さまざまな方法を使って Java で配列をセットに変換する方法を学びます。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL java(("Java")) -.-> java/BasicSyntaxGroup(["Basic Syntax"]) java(("Java")) -.-> java/FileandIOManagementGroup(["File and I/O Management"]) java(("Java")) -.-> java/StringManipulationGroup(["String Manipulation"]) java(("Java")) -.-> java/DataStructuresGroup(["Data Structures"]) java(("Java")) -.-> java/ObjectOrientedandAdvancedConceptsGroup(["Object-Oriented and Advanced Concepts"]) java/BasicSyntaxGroup -.-> java/variables("Variables") java/StringManipulationGroup -.-> java/strings("Strings") java/DataStructuresGroup -.-> java/arrays("Arrays") java/DataStructuresGroup -.-> java/arrays_methods("Arrays Methods") java/DataStructuresGroup -.-> java/collections_methods("Collections Methods") java/ObjectOrientedandAdvancedConceptsGroup -.-> java/hashset("HashSet") java/FileandIOManagementGroup -.-> java/files("Files") java/FileandIOManagementGroup -.-> java/create_write_files("Create/Write Files") java/FileandIOManagementGroup -.-> java/stream("Stream") subgraph Lab Skills java/variables -.-> lab-117416{{"配列をセットに変換する"}} java/strings -.-> lab-117416{{"配列をセットに変換する"}} java/arrays -.-> lab-117416{{"配列をセットに変換する"}} java/arrays_methods -.-> lab-117416{{"配列をセットに変換する"}} java/collections_methods -.-> lab-117416{{"配列をセットに変換する"}} java/hashset -.-> lab-117416{{"配列をセットに変換する"}} java/files -.-> lab-117416{{"配列をセットに変換する"}} java/create_write_files -.-> lab-117416{{"配列をセットに変換する"}} java/stream -.-> lab-117416{{"配列をセットに変換する"}} end

Java ファイルを作成する

次のコマンドを使って、~/project ディレクトリに新しい Java ファイルを作成しましょう。

touch ~/project/ArrayToSet.java

必要なクラスをインポートする

私たちの Java ファイルでは、まず最初にプログラムに必要なクラスをインポートする必要があります。私たちは HashSet、Collections、Arrays、および Set クラスを使用します。これらのクラスをインポートするには、次のコードを追加します。

import java.util.Arrays;
import java.util.Collections;
import java.util.HashSet;
import java.util.Set;

配列を作成する

いくつかの重複する要素を持つ簡単な文字列の配列を作成しましょう。次のコードを追加します。

String[] fruits = {"Apple", "Orange", "Banana", "Orange"};

addAll() を使って配列をセットに変換する

このステップでは、Collections クラスの addAll() メソッドを使って配列をセットに変換します。addAll() メソッドは、配列のすべての要素を指定されたコレクションに追加します。main() メソッドに次のコードを追加します。

Set<String> fruitsSet = new HashSet<>();
Collections.addAll(fruitsSet, fruits);
System.out.println(fruitsSet);

asList() を使って配列をセットに変換する

このステップでは、Arrays クラスの asList() メソッドを使って配列をセットに変換します。asList() メソッドは配列のリストを返し、これを Set コンストラクタを使ってセットに変換できます。main() メソッドに次のコードを追加します。

Set<String> fruitsSet = new HashSet<>(Arrays.asList(fruits));
System.out.println(fruitsSet);

Java 8 の Stream を使って配列をセットに変換する

このステップでは、Java 8 の Stream の Collectors クラスの toSet() メソッドを使って配列をセットに変換します。toSet() メソッドは、Stream の要素を Set インスタンスに収集します。main() メソッドに次のコードを追加します。

Set<String> fruitsSet = Arrays.stream(fruits)
                       .collect(Collectors.toSet());
System.out.println(fruitsSet);

コードをコンパイルして実行する

次のコマンドを使って Java プログラムをコンパイルして実行できます。

javac ArrayToSet.java && java ArrayToSet

出力では、変換中にセットに追加された配列の一意の要素が表示されるはずです。

まとめ

この実験では、Java で配列をセットに変換する 3 つの異なる方法、すなわち addAll()、asList()、および Java 8 Streams の toSet() を学びました。また、必要なクラスをインポートし、配列を作成し、コマンド ラインを使って Java プログラムを実行する方法も学びました。これらの概念を理解することで、Java で配列をセットに簡単に変換できます。