gpt4 book ai didi

java - Java/JavaFX 中的 -> 运算符是什么?

转载 作者:行者123 更新时间:2023-11-29 07:40:49 25 4
gpt4 key购买 nike

查看 JavaFX 中的一个开源项目,我发现了这一行:

@FXML
private TreeTableColumn<Person, String> firstNameColumn;
@FXML
private TreeTableColumn<Person, String> lastNameColumn;
@FXML
private void initialize() {
// Initialize the person table with the two columns.
firstNameColumn.setCellValueFactory(cellData -> cellData.getValue().firstNameProperty());
lastNameColumn.setCellValueFactory(cellData -> cellData.getValue().lastNameProperty());
}

我以前从未见过“->”运算符。这是什么?

setCellvalueFactory 的签名是:

setCellValueFactory(Callback< TreeTableColumn.CellDataFeatures< S,T>,
ObservableValue< T>> value)

最佳答案

您代码中的箭头标记是 lambda expression 的一部分.有人说这是 Java 8 带来的最大特性。

一个示例用例是提高代码的可读性。而不是匿名类

btn.setOnAction(new EventHandler<ActionEvent>() {

@Override
public void handle(ActionEvent event) {
System.out.println("Hello World!");
}
});

你可以像 lambda 表达式那样写:

btn.setOnAction(
event -> System.out.println("Hello World!")
);

关于java - Java/JavaFX 中的 -> 运算符是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30438982/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com