方法一:使用迭代器进行遍历和删除
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]
方法二:使用 Java 8 的 Stream 进行过滤
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]
方法三:使用Java8 Collecttion的removeIf() 方法,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]
方法四:使用 Apache Commons Collections 库,其中的 CollectionUtils 类提供了 removeNull 方法,可以方便地从集合中删除 null 元素。
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]


本文介绍了四种在Java中从List中删除null元素的方法:1)使用迭代器和hasNext()进行遍历删除;2)利用Java8的StreamAPI进行过滤;3)使用Java8Collection的removeIf()方法;4)通过ApacheCommonsCollections的removeNull()方法。每种方法都展示了其简洁和高效的特点。

282

被折叠的 条评论
为什么被折叠?



