Java

java foreach与lambda表达式结合使用技巧

小樊
87
2024-09-05 15:04:49
栏目: 编程语言

在Java中,foreach循环和Lambda表达式可以很好地结合使用,以提高代码的简洁性和可读性。以下是一些使用foreach循环和Lambda表达式的技巧:

  1. 遍历集合:
List<String> names = Arrays.asList("Alice", "Bob", "Charlie");
names.forEach(name -> System.out.println(name));
  1. 使用方法引用:
List<String> names = Arrays.asList("Alice", "Bob", "Charlie");
names.forEach(System.out::println);
  1. 过滤集合:
List<String> names = Arrays.asList("Alice", "Bob", "Charlie");
List<String> filteredNames = names.stream()
                                 .filter(name -> name.length() > 4)
                                 .collect(Collectors.toList());
  1. 转换集合:
List<String> names = Arrays.asList("Alice", "Bob", "Charlie");
List<String> upperCaseNames = names.stream()
                                   .map(String::toUpperCase)
                                   .collect(Collectors.toList());
  1. 将两个集合合并:
List<String> names1 = Arrays.asList("Alice", "Bob");
List<String> names2 = Arrays.asList("Charlie", "David");
List<String> combinedNames = Stream.concat(names1.stream(), names2.stream())
                                    .collect(Collectors.toList());
  1. 对集合进行排序:
List<String> names = Arrays.asList("Alice", "Bob", "Charlie");
names.sort((name1, name2) -> name1.compareTo(name2));
  1. 使用并行流提高性能:
List<String> names = Arrays.asList("Alice", "Bob", "Charlie");
names.parallelStream().forEach(name -> System.out.println(name));
  1. 使用reduce操作计算集合中元素的总和:
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5);
int sum = numbers.stream().reduce(0, (a, b) -> a + b);

这些技巧可以帮助你更有效地使用foreach循环和Lambda表达式来处理集合。请注意,这些示例仅适用于Java 8及更高版本。

0
看了该问题的人还看了