How do I write a lambda expression if it doesn't require arguments and hence its name is excessive?
This way doesn't compile:
setRowFactory(-> new TableRowCustom());
But this one does:
setRowFactory(__ -> new TableRowCustom());
Is there a better way?
Since you've mentioned that this works
I assume that the expected functional interface method must accept a single argument. The identifier
_
is a reserved keyword since Java 8.I would just use a throwaway single (valid identifier) character.
or even
to be explicit.
The Java Language Specification defines the syntax of a lambda expression
and
In other words, you cannot omit an identifier.
As Holger suggests, if and when they decide to use
_
as an unused parameter name, it will be easy to change from__
to_
in your source code. You may want to just stick with that for now.