Java 8 集合操作
在Java 8中,集合操作变得更加简洁和方便,引入了一些新的功能,如Lambda表达式和Stream API,使得对集合的操作变得更加灵活和高效。本文将介绍Java 8中集合操作的一些常用方法,并通过代码示例展示其用法。
Lambda表达式
Lambda表达式是Java 8中引入的一个重要特性,它可以用来简洁地表示一个匿名函数。在集合操作中,Lambda表达式可以替代传统的匿名内部类,使代码更加简洁易懂。
List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5);
numbers.forEach((Integer number) -> System.out.println(number));
上面的代码使用Lambda表达式遍历了一个整数列表,并打印出每一个元素的值。Lambda表达式的语法为(参数列表) -> 表达式
,在这里number
是参数,System.out.println(number)
是表达式。
Stream API
Stream API是Java 8中引入的一个新的API,可以用来对集合进行高效的操作。通过Stream API,我们可以轻松地完成过滤、映射、排序等操作。
List<String> names = Arrays.asList("Alice", "Bob", "Charlie", "David", "Eve");
List<String> filteredNames = names.stream()
.filter(name -> name.startsWith("A"))
.collect(Collectors.toList());
System.out.println(filteredNames);
上面的代码使用Stream API过滤出以字母"A"开头的名字,并将结果收集到一个新的列表中。在这里,filter
方法用于过滤元素,collect
方法用于收集结果。
类图
下面是一个简单的类图,展示了List
、Stream
和Collectors
类之间的关系:
classDiagram
class List
class Stream
class Collectors
List <|-- Stream
Stream "1" o-- "0..*" Collectors
总结
Java 8中引入的Lambda表达式和Stream API为集合操作提供了更加灵活和高效的方式。通过Lambda表达式,我们可以简洁地表示匿名函数;通过Stream API,我们可以轻松地完成对集合的各种操作。在实际开发中,我们可以充分利用这些新特性,使代码更加简洁易读,提高开发效率。