J'ai le code de recherche suivant en Java:
return getTableViewController().getMe().getColumns().stream().filter($->Database.equalsColumnName($.getId(), columnId)).findFirst().get();
Je souhaitais trouver la colonne par son nom et retourner la première trouvée.
Je comprends qu'il y a un cas où rien n'a été trouvé et il devrait être traité, mais comment?
Est-ce ce qu'il veut par cette assermentation:
'Optional.get()' without 'isPresent()' check
?
Comment réparer? Je souhaite retourner null
si rien n'est trouvé.
UPDATE
D'accord, d'accord, je ne savais tout simplement pas que findFirst()
renvoie Optional
.
Remplacez get()
par orElse(null)
.
...findFirst().orElse(null);
Renvoie la valeur si présente, sinon renvoie null
. La documentation indique que le paramètre transmis peut être null
(ce qui est interdit pour orElseGet
et orElseThrow
).