欢迎访问宙启技术站
智能推送

Java集合函数的高级示例

发布时间:2023-05-23 14:55:34

Java中的集合框架提供了许多有用的函数,可以帮助我们更高效地处理集合数据。本文将介绍一些Java集合函数的高级示例,包括:

1. stream()函数

2. filter()函数

3. collect()函数

4. map()函数

5. reduce()函数

1. stream()函数

Java中的stream()函数可以将一个集合转换成一个流,我们可以通过流来遍历和处理集合中的元素。下面是一个示例:

List<Integer> list = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);

int sum = list.stream().filter(n -> n % 2 == 0).mapToInt(Integer::intValue).sum();

System.out.println(sum);

上面的代码中,我们首先定义了一个包含10个整数的集合。然后我们调用了stream()函数,将集合转换成流。接着我们使用filter()函数过滤出集合中所有的偶数。mapToInt()函数将过滤出来的数转换成int类型,最后使用sum()函数得到所有偶数的和。这里输出结果为30。

2. filter()函数

Java中的filter()函数可以根据指定条件筛选集合中的元素,返回一个符合条件的新集合。下面是一个示例:

List<String> list = Arrays.asList("Java", "JavaScript", "Python", "Go", "Ruby", "C++");

List<String> filteredList = list.stream().filter(s -> s.startsWith("J")).collect(Collectors.toList());

System.out.println(filteredList);

上面的代码中,我们定义了一个包含若干字符串的集合。然后我们调用了filter()函数,通过lambda表达式筛选出所有以字母J开头的字符串。collect()函数将筛选出来的字符串转换成新的集合。最后输出结果为[Java, JavaScript]。

3. collect()函数

Java中的collect()函数可以将流转换成集合。下面是一个示例:

List<Integer> list = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);

List<Integer> filteredList = list.stream().filter(n -> n % 2 == 0).collect(Collectors.toList());

System.out.println(filteredList);

上面的代码中,我们首先定义了一个包含10个整数的集合。然后我们调用了stream()函数,将集合转换成流。接着我们使用filter()函数过滤出集合中所有的偶数。最后使用collect()函数将过滤出来的数转换成新的集合。这里输出结果为[2, 4, 6, 8, 10]。

4. map()函数

Java中的map()函数可以对集合中的每个元素进行指定操作,并返回一个新的集合。下面是一个示例:

List<String> list = Arrays.asList("Java", "JavaScript", "Python", "Go", "Ruby", "C++");

List<String> mappedList = list.stream().map(s -> s.toUpperCase()).collect(Collectors.toList());

System.out.println(mappedList);

上面的代码中,我们定义了一个包含若干字符串的集合。然后我们调用了map()函数,将每个字符串转换为大写形式,并将转换后的结果转换成新的集合。最后输出结果为[JAVA, JAVASCRIPT, PYTHON, GO, RUBY, C++]。

5. reduce()函数

Java中的reduce()函数可以将集合中的元素组合成一个单一的结果,比如求和、求最大值等。下面是一个示例:

List<Integer> list = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);

int sum = list.stream().reduce(0, (a, b) -> a + b);

System.out.println(sum);

上面的代码中,我们首先定义了一个包含10个整数的集合。然后我们调用了stream()函数,将集合转换成流。接着我们使用reduce()函数将集合中所有元素求和。这里输出结果为55。

综上所述,Java集合函数可以帮助我们更高效地处理集合数据,提高代码的可读性和可维护性。以上就是Java集合函数的高级示例。