Corrija o erro: filtrando arrays vazios
Estou tentando remover os arrays vazios de um array. Em outras palavras, quero transformar algo como new Object[]{"a", "b", new Object[0], new Object[0], new Object[]{1, 2, 3}} em new Object[]{"a", "b", new Object[]{1, 2, 3}}. Meu código é este:
public static Object[] removeEmptyArrays(Object[] items) {
return java.util.Arrays.stream(items).filter(item -> item != new Object[0]).toArray();
}No entanto, por algum motivo, os arrays vazios continuam lá. Corrija o código para removê-los.
Exemplos
// O que quero obter:
Program.removeEmptyArrays(new Object[]{"a", "b", new Object[0]}) ➞ new Object[]{"a", "b"}
Program.removeEmptyArrays(new Object[]{1, 2, new Object[0], 4}) ➞ new Object[]{1, 2, 4}
// O que estou obtendo:
Program.removeEmptyArrays(new Object[]{"a", "b", new Object[0]}) ➞ new Object[]{"a", "b", new Object[0]}
Program.removeEmptyArrays(new Object[]{1, 2, new Object[0], 4}) ➞ new Object[]{1, 2, new Object[0], 4}Notas
N/A