List 删除 null 和 空值

1.removeIf()

        List<String> list = new ArrayList<>();
        list.add("zs");
        list.add(null);
        list.add("ls");
        list.add(null);
        list.add("");
        list.forEach(o -> System.out.println("删除前:" + o));
        list.removeIf(Objects::isNull);
        list.removeIf(o -> Objects.equals(o,"")); //同理也可以是其他值
        list.forEach(o -> System.out.println("删除后:" + o));

2.lambda

        List<String> list = new ArrayList<>();
        list.add("zs");
        list.add(null);
        list.add("ls");
        list.add(null);
        list.forEach(o -> System.out.println("删除前:" + o));
        List<String> collect = list.stream().filter(o -> o != null && !Objects.equals(o,"")).collect(Collectors.toList());
        collect.forEach(o -> System.out.println("删除后:" + o));

3.HuTool工具

        List<String> list = new ArrayList<>();
        list.add("zs");
        list.add(null);
        list.add("ls");
        list.add(null);
        list.forEach(o -> System.out.println("删除前:" + o));
        CollectionUtil.removeNull(list);//只能删除null
        CollectionUtil.removeEmpty(list);//能删除null和"" 删不了" "
        list.forEach(o -> System.out.println("删除后:" + o));

HuTool Maven 依赖


<dependency>
    <groupId>cn.hutool</groupId>
    <artifactId>hutool-all</artifactId>
    <version>5.8.16</version>
</dependency>

官方文档 https://doc.hutool.cn/pages/index/

4.CollectionUtils

        List<String> list = new ArrayList<>();
        list.add("zs");
        list.add(null);
        list.add("ls");
        list.add(null);
        list.add("");
        list.forEach(o -> System.out.println("删除前:" + o));
        CollectionUtils.filter(list,o -> !Objects.equals("",o) && o != null);
        list.forEach(o -> System.out.println("删除后:" + o));

Maven 依赖

        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-collections4</artifactId>
            <version>4.4</version>
        </dependency>

5.迭代器

        List<String> list = new ArrayList<>();
        list.add("zs");
        list.add(null);
        list.add("ls");
        list.add(null);
        list.add("");
        list.forEach(o -> System.out.println("删除前:" + o));
        Iterator<String> iterator = list.iterator();
        while (iterator.hasNext()) {
   
            String next = iterator.next();
            if (next == null || (next != null && next.equals(""))) {
   
                iterator.remove();
            }
        }
        list.forEach(o -> System.out.println("删除后:" + o));

相关推荐

  1. List 删除 null

    2024-01-03 10:32:08       37 阅读
  2. mysql null的区别

    2024-01-03 10:32:08       16 阅读
  3. null是两回事

    2024-01-03 10:32:08       13 阅读
  4. MySQL中NULL的坑

    2024-01-03 10:32:08       36 阅读
  5. List Set Map 的能否为NUll?

    2024-01-03 10:32:08       12 阅读
  6. mysql 索引null的关系

    2024-01-03 10:32:08       9 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-01-03 10:32:08       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-01-03 10:32:08       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-01-03 10:32:08       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-01-03 10:32:08       20 阅读

热门阅读

  1. yolov8 速度测试

    2024-01-03 10:32:08       32 阅读
  2. FFmpeg处理音视频的常用API及一般流程

    2024-01-03 10:32:08       38 阅读
  3. springboot实现多数据源

    2024-01-03 10:32:08       33 阅读
  4. 前端 富文本编辑器原理

    2024-01-03 10:32:08       39 阅读
  5. MySQL数据库基础

    2024-01-03 10:32:08       43 阅读
  6. 在spring boot中集成druid的数据监控页面

    2024-01-03 10:32:08       48 阅读
  7. react--自定义列表字段

    2024-01-03 10:32:08       35 阅读