Вы можете опустить фигурные скобки, когда тело лямбда является единственным выражением или вызовом метода void. Каждое выражение оценивает значение и, следовательно, не может быть пусто.
Если тело лямбда является блоком операторов (например, серия вычислений, за которой следует инструкция return
), или лямбда имеет нет значения (т. е. имеет тип возврата void
) и не является единственным вызовом метода void, вы должны использовать форму блока, для которой требуются скобки.
В блочном лямбда, если значение равно return
ed, то все возможные пути кода должны либо return
, либо throw
a Throwable
.
В обработчике переключите состояние на основе текущего состояния. Другими словами, если непрозрачность равна 1.0
, измените ее на 0.0
и наоборот.
mainAnchor.setOnKeyPressed(event -> {
if (event.getCode() == KeyCode.DEAD_TILDE) {
previewCard.setOpacity(previewCard.getOpacity() == 0.0 ? 1.0 : 0.0);
event.consume();
}
});
Когда вы переключаетесь между 0.0
и 1.0
, вы можете использовать вместо этого свойство visible
.
mainAnchor.setOnKeyPressed(event -> {
if (event.getCode() == KeyCode.DEAD_TILDE) {
previewCard.setVisible(!previewCard.isVisible());
event.consume();
}
});