この記事では、Java で配列に値が存在するかどうかを確認する方法について説明します。配列に指定された要素が含まれている場合、ソリューションは true を返す必要があります。それ以外の場合は false。

1.中間リストの使用

使用できます Arrays.asList() アレイに裏打ちされたリストを取得し、 List::contains 値がリストに存在するかどうかを判別するメソッド。

ダウンロード  コードを実行する

 
上記の解決策は、プリミティブのアレイでは機能しません。 Guavaライブラリをご希望の場合は、 Ints.asList() プリミティブのメソッド。

コードをダウンロード

2.中間セットの使用

または、アレイ要素からセットを作成して、 Set::contains 指定された値がその中に存在するかどうかを判断する方法。これは、文字列アレイについて以下に示されています。

ダウンロード  コードを実行する

 
Java8ストリームを使用したプリミティブアレイの例を次に示します。

ダウンロード  コードを実行する

3. Apache CommonsLangLibraryの使用

を活用することもできます ArrayUtils.contains() Apache Commons Langライブラリによって提供されるメソッド。アレイに指定された値が含まれている場合、trueを返します。すべてのプリミティブタイプとオブジェクトアレイに対してオーバーロードされます。

コードをダウンロード

4.使用する Stream.anyMatch() 方法

Java 8以降では、ストリームを作成し、ストリームのいずれかの要素が指定された要素と一致するかどうかを確認できます anyMatch() 方法。これは、文字列アレイについて以下に示されています。

ダウンロード  コードを実行する

 
プリミティブアレイの場合は、 == 指定された要素と一致する演算子。

ダウンロード  コードを実行する

5.使用する Stream.filter() 方法

別のアプローチは 指定されたアレイをストリームに変換します を使用して、指定された要素のすべての出現をフィルタリングします filter() 方法。次に、 findFirst() を返すメソッド Optional.

ダウンロード  コードを実行する

 
また、 count() アレイ内の指定された要素の数を取得するメソッド:

ダウンロード  コードを実行する

 
プリミティブアレイの場合は、 == 比較のための演算子。

ダウンロード  コードを実行する

Java で配列に値が存在するかどうかを確認する方法は以上です。