整数の ArrayList をプリミティブ int 配列に変換する
Java では、Integer オブジェクトを含む ArrayList をプリミティブ int に変換する方法が複数あります。 [] array.
コード スニペットで試行された 1 つのメソッド提供されている場合は、 toArray() メソッドを使用します。ただし、配列型に互換性がないため、コンパイル時エラーがスローされます。これを解決するには、以下に示すように、返される配列のタイプを指定します。
int[] n = (int[])x.toArray(new int[x.size()]);
別のアプローチは、特に Java 8 で便利ですが、Stream API を利用することです。
int[] arr = list.stream().mapToInt(i -> i).toArray();
このメソッドは、リスト内の各要素を対応する int 値に変換し、目的の配列を生成します。
また、intValue メソッドを使用して、各 Integer オブジェクトを明示的に変換します:
int[] arr = list.stream().mapToInt(Integer::intValue).toArray();
潜在的な null 参照を処理するには、ストリーム パイプラインにフィルターを追加します:
int[] arr = list.stream().filter(Objects::nonNull).mapToInt(i -> i).toArray();
これらの手法を使用すると、整数の ArrayList を効率的に変換できます。 Java のプリミティブ int 配列に変換します。
以上がJava で整数の ArrayList をプリミティブ int 配列に効率的に変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。