removeIf

2022-08-16 18:49:11 浏览数 (1)

礼貌是最容易做到的事,也是最珍贵的东西。—— 冈察尔

Java中我们可能使用StreamfilterList去过滤一些数据

但如果我们想要更高的效率,或者我们修改源数据,就需要用到Listremoveif

下面是一个简单的测试

代码语言:javascript复制
// 生成从0到20的数字,过滤掉奇数
        List<Integer> intList = Stream.iterate(0, e ->   e).limit(20).collect(Collectors.toList());
        long filterStart = System.nanoTime();
        intList.stream().filter(a -> a % 2 == 0).collect(Collectors.toList());
        long filterEnd = System.nanoTime();
        System.out.println("filter执行了"   ((filterEnd - filterStart) / (1000.0 * 1000.0))   "ms");
        long removeIfStart = System.nanoTime();
        intList.removeIf(a -> a % 2 != 0);
        long removeIfEnd = System.nanoTime();
        System.out.println("removeIfEnd执行了"   ((removeIfEnd - removeIfStart) / (1000.0 * 1000.0))   "ms");

执行结果

0 人点赞