将Optional的值分配给变量(如果存在) [英] Assign value of Optional to a variable if present

查看:149
本文介绍了将Optional的值分配给变量(如果存在)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用Java Optional.我看到Optional有一个ifPresent方法.

Hi I am using Java Optional. I saw that the Optional has a method ifPresent.

代替做类似的事情:

Optional<MyObject> object = someMethod();
if(object.isPresent()) {
    String myObjectValue = object.get().getValue();
}

我想知道如何使用Optional.ifPresent()将值分配给变量.

I wanted to know how I can use the Optional.ifPresent() to assign the value to a variable.

我正在尝试类似的事情:

I was trying something like:

String myValue = object.ifPresent(getValue());

要获取分配给该变量的值,我需要lambda函数是什么?

What do I need the lambda function to be to get the value assigned to that variable?

推荐答案

您可以使用 #orElse orElseThrow 来提高代码的可读性.

You could use #orElse or orElseThrow to improve the readbility of your code.

Optional<MyObject> object = someMethod();
String myValue = object.orElse(new MyObject()).getValue();


Optional<MyObject> object = someMethod();
String myValue = object.orElseThrow(RuntimeException::new).getValue();

这篇关于将Optional的值分配给变量(如果存在)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆