Java里的::
时间: 2023-07-02 12:07:06 浏览: 54
在 Java 中,`::` 是方法引用操作符,它可以用来创建对方法或构造函数的引用。它的语法如下:
- 对于静态方法: `ClassName::methodName`
- 对于实例方法: `objectName::methodName`
- 对于构造函数: `ClassName::new`
例如,假设我们有一个接口 `Comparator`,它有一个方法 `compare` 用于比较两个对象。我们可以使用方法引用来引用类的静态方法来创建一个 `Comparator` 实例,如下所示:
```
Comparator<Integer> comparator = Integer::compare;
```
这将创建一个 `Comparator` 实例,该实例可以比较两个整数值。
另外,在 Java 8 中,`::` 还可以用于访问构造函数。例如,假设我们有一个类 `Person`,它有一个带有两个参数的构造函数:
```
public class Person {
private String name;
private int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
}
```
我们可以使用 `::` 来引用该构造函数,如下所示:
```
Function<String, Integer, Person> personConstructor = Person::new;
```
这将创建一个 `Function` 实例,该实例可以使用给定的字符串和整数值来创建一个 `Person` 对象。