如何从 Optional<String> 返回字符串?

B.D*_*ave 2 dialog javafx

我有以下功能。

public String getSomething(){
   TextInputDialog dialog = new TextInputDialog();
   dialog.setHeaderText("X");
   dialog.setTitle("Y");
   Optional<String> result = dialog.showAndWait();
   return result;
}
Run Code Online (Sandbox Code Playgroud)

显然,返回的值不是String类型的。String当结果的类型是时,我怎么能返回Optional<String>

Pol*_*ire 5

尝试做result.get()应该返回一个字符串。

  • 您应该在之前检查“isPresent()”,因为“get()”可能会抛出“NoSuchElementException”。 (2认同)

小智 5

我会做这样的事情来确保你免受 null 的影响 if(a. isPresent()) {a.get()}