どうも、ちょげ(@chogetarou)です。
配列(array)のNullの要素を削除する方法を紹介します。
方法

配列(array)のNullの要素を削除するには、Arraysを使います。
まず、Arraysをインポートします。
import java.util.Arrays;
次に、Arraysからstream()を呼び出します。
stream()の引数に配列を指定します。
stream()からfilter()を呼び出し、filter()の引数に要素がNull以外で「true」となる条件式を返すラムダ式指定します。
そして、filter()からtoArray()を呼び出します。
toArray()の引数に「T[]::new」(T=要素の型)を指定します。
//T=要素の型, arr=対象の配列
T[] result = Arrays.stream(arr)
.filter(a -> a != null)
.toArray(T[]::new);
上記のtoArray()は、Nullの要素を全て削除した配列(array)を生成します。
使用例
import java.util.Arrays;
public class Main {
public static void main(String[] args) throws Exception {
String[] nums = {"one", null, "two", "three", null, null, "four", "five", null};
nums = Arrays.stream(nums)
.filter(a -> a != null)
.toArray(String[]::new);
System.out.println(String.join(",", nums));
}
}
出力:
one,two,three,four,five





コメント