java 方法引用
时间: 2023-08-04 20:11:38 浏览: 107
Java 方法引用是一种简化Lambda表达式的语法形式,它可以直接引用现有方法并直接传递给函数式接口。
Java方法引用的语法形式为::,它包含以下几种类型:
1. 静态方法引用:ClassName::staticMethodName
例如:Math::abs
2. 实例方法引用:instanceName::instanceMethodName
例如:System.out::println
3. 类的任意对象方法引用:ClassName::methodName
例如:String::length
4. 构造方法引用:ClassName::new
例如:ArrayList::new
以下是一个简单的示例,演示如何使用方法引用来实现排序:
```
List<String> names = Arrays.asList("Tom", "Jerry", "Alice", "Bob");
// 传统的Lambda表达式方式
names.sort((s1, s2) -> s1.compareTo(s2));
// 方法引用方式
names.sort(String::compareTo);
```
上面的代码中,我们使用了静态方法引用方式来传递字符串的compareTo方法给sort方法,这样就可以根据字符串的字典序进行排序了。
阅读全文