June 2017
Beginner
1296 pages
69h 23m
English
In Section 12.5.5, you learned how to implement an event handler using an anonymous inner class. Event-listener interfaces with one abstract method—like ChangeListener—are functional interfaces. For such interfaces, you can implement event handlers with lambdas. For example, the following Slider event handler from Fig. 12.23:
tipPercentageSlider.valueProperty().addListener(
new ChangeListener<Number>() {
@Override
public void changed(ObservableValue<? extends Number> ov,
Number oldValue, Number newValue) {
tipPercentage =
BigDecimal.valueOf(newValue.intValue() / 100.0);
tipPercentageLabel.setText(percent.format(tipPercentage));
}
}
);
can be implemented more concisely with a lambda as
tipPercentageSlider.valueProperty().addListener( ...Read now
Unlock full access