◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。
在 java 中,对数组过滤的方法有:java 8 中的流 api:filter() 和 distinct()apache commons lang 的 arrayutils:filter() 和 removeduplicates()自定义过滤函数:arrays.stream() 和 filter()
Java 中对数组过滤
在 Java 中,可以使用以下方法对数组进行过滤:
1. Java 8 中的流 API
流 API 提供了以下方法进行过滤:
立即学习“Java免费学习笔记(深入)”;
代码示例:
import java.util.Arrays; public class ArrayFilter { public static void main(String[] args) { int[] numbers = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; // 过滤出偶数 int[] evenNumbers = Arrays.stream(numbers) .filter(n -> n % 2 == 0) .toArray(); // 过滤出重复元素 int[] distinctNumbers = Arrays.stream(numbers) .distinct() .toArray(); } }
2. Apache Commons Lang 的 ArrayUtils
Apache Commons Lang 提供了以下方法进行过滤:
代码示例:
import org.apache.commons.lang3.ArrayUtils; public class ArrayFilter { public static void main(String[] args) { int[] numbers = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; // 过滤出偶数 int[] evenNumbers = ArrayUtils.filter(numbers, n -> n % 2 == 0); // 过滤出重复元素 int[] distinctNumbers = ArrayUtils.removeDuplicates(numbers); } }
3. 自定义过滤函数
还可以创建自定义过滤函数,并使用以下方法将其应用于数组:
代码示例:
public class ArrayFilter { public static void main(String[] args) { int[] numbers = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; // 过滤出偶数 int[] evenNumbers = Arrays.stream(numbers) .filter(ArrayFilter::isEven) .toArray(); // 过滤出奇数 int[] oddNumbers = Arrays.stream(numbers) .filter(ArrayFilter::isOdd) .toArray(); // 自定义过滤函数 private static boolean isEven(int n) { return n % 2 == 0; } private static boolean isOdd(int n) { return n % 2 != 0; } } }
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。