列举所有java8特性和相应的示例代码
时间: 2023-11-24 07:33:32 浏览: 78
好的,以下是Java8特性及相应示例代码:
1. Lambda表达式
Lambda表达式是Java8最具代表性的特性之一,可以让我们使用更简单、更直观的方式定义匿名函数。
示例代码:
List<String> names = Arrays.asList("Alice", "Bob", "Charlie", "David");
// 使用Lambda表达式筛选出名字长度大于3的人
List<String> filteredNames = names.stream()
.filter(name -> name.length() > 3)
.collect(Collectors.toList());
2. 方法引用
方法引用是一种更简便的Lambda表达式写法,可以在不使用Lambda语法的情况下引用已有的方法。
示例代码:
// 使用方法引用读取文件内容
Files.lines(Paths.get("file.txt")).forEach(System.out::println);
3. Stream API
Stream API是Java8中新加的一个处理集合类的工具类,可以方便地进行过滤、映射、归约等操作。
示例代码:
List<String> names = Arrays.asList("Alice", "Bob", "Charlie", "David");
// 使用Stream API将名字转换成大写
List<String> upperCaseNames = names.stream()
.map(String::toUpperCase)
.collect(Collectors.toList());
4. Optional类型
Optional类型是一种可以表示可能为空的值的类型,可以避免NullPointerException等异常。
示例代码:
Optional<String> name = Optional.ofNullable(null);
// 如果name不为空,则输出其长度
name.ifPresent(n -> System.out.println(n.length()));
以上是Java8的部分特性和相应示例代码,希望对您有所帮助!如有任何疑问,可以随时向我提问。
阅读全文