gpt4 book ai didi

java - [var =modify(var)] 是一种不好的做法吗?

转载 作者:行者123 更新时间:2023-11-30 02:53:50 25 4
gpt4 key购买 nike

作为一个简化的示例,给定一个数字数组。我需要应用一些值过滤器。

所以我现在在做什么:

原始给定数组:List<Integer>originalList;

我如何构建我的过滤方法:

List<Integer> removeNegativeNumber(final List<Integer> numberList) {
return FluentIterable.from(numberList).filter(rule).toList();
}

我如何使用:

List<Integer> filteredList = removeNegativeNumber(originalList);
filteredList = removeOddNumber(filteredList);
filteredList = removeZeroNumber(filteredList);

我的感觉告诉我可以做得更好。但我不知道怎么办。有人可以给我建议,以改进我的代码吗?

最佳答案

如果您使用的是 Java 8,请考虑使用 lambda 和 Stream#filter():

List<Integer> list = Arrays.asList(0, 1, 2, 3, 4, 5);
List<Integer> filteredList = list.stream()
.filter(i -> i % 2 == 0)
.filter(i -> i != 0)
.collect(Collectors.toList());
System.out.println(filteredList);

或者使用IntStream:

IntStream stream = IntStream.of(0, 1, 2, 3, 4, 5);
IntStream filteredStream = stream.filter(i -> i % 2 == 0)
.filter(i -> i != 0);
filteredStream.forEach(System.out::println);

Java 文档:

  1. https://docs.oracle.com/javase/8/docs/api/java/util/stream/Stream.html

  2. https://docs.oracle.com/javase/8/docs/api/java/util/stream/Stream.html#filter-java.util.function.Predicate-

关于java - [var =modify(var)] 是一种不好的做法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37836298/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com