Método 1: utilizar iteradores para recorrer y eliminar
List<String> list = new ArrayList<>();
list.add("A");
list.add(null);
list.add("B");
list.add(null);
list.add("C");
Iterator<String> iterator = list.iterator();
while (iterator.hasNext()) {
if (iterator.next() == null) {
iterator.remove();
}
}
System.out.println(list); // 输出: [A, B, C]
Método 2: utilice Stream de Java 8 para filtrar
List<String> list = new ArrayList<>();
list.add("A");
list.add(null);
list.add("B");
list.add(null);
list.add("C");
list = list.stream()
.filter(Objects::nonNull)
.collect(Collectors.toList());
System.out.println(list); // 输出: [A, B, C]
Método 3: utilice el método removeIf() de la colección Java8, arraylist.removeIf(Predicate<E> filter)
List<String> list = new ArrayList<>();
list.add("A");
list.add(null);
list.add("B");
list.add(null);
list.add("C");
list.removeIf(Objects::isNull);
System.out.println(list); // 输出: [A, B, C]
Método 4: utilice la biblioteca de colecciones de Apache Commons, donde CollectionUtils
las clases proporcionan removeNull
métodos para eliminar fácilmente elementos nulos de la colección.
import org.apache.commons.collections4.CollectionUtils;
List<String> list = new ArrayList<>();
list.add("A");
list.add(null);
list.add("B");
list.add(null);
list.add("C");
CollectionUtils.removeNull(list);
System.out.println(list); // 输出: [A, B, C]