Java JDK 8可选功能
对不起,如果我不清楚: 我正在使用SpringBoot实现Restful服务。 我正在基于请求参数构建URI。我正在检查参数值,并基于此需要使用参数值构建URI。如果它不是null,我想将它添加到URI参数中。 主持人/hello?abc=“somevalue”Java JDK 8可选功能,java,java-8,optional,Java,Java 8,Optional,对不起,如果我不清楚: 我正在使用SpringBoot实现Restful服务。 我正在基于请求参数构建URI。我正在检查参数值,并基于此需要使用参数值构建URI。如果它不是null,我想将它添加到URI参数中。 主持人/hello?abc=“somevalue” MultiValueMap参数=新链接的MultiValueMap(); 如果(null!=abc){ 参数添加(“abc”、“123”); } 我不熟悉JDK 8特性 1) 如何使用JDK 8可选功能实现这一点 2) 是否可以同时抛
MultiValueMap参数=新链接的MultiValueMap();
如果(null!=abc){
参数添加(“abc”、“123”);
}
我不熟悉JDK 8特性
1) 如何使用JDK 8可选功能实现这一点
2) 是否可以同时抛出异常并使用可选项记录它?坦白说,我认为在这里使用
可选项没有任何意义。您拥有的代码很好(我们可以随时讨论Yoda条件)
如果你坚持,你可以写:
Optional.ofNullable(abc).ifPresent(abc -> params.add("abc","123"));
链接:不清楚您在寻找什么,但是对于空检查,您可以使用对象。isNull(Object obj)
否,如果是可选的,则“抛出异常并记录它”是不可能的,但是您的代码示例也不可能。如果是可选的,则在缺少值的情况下抛出异常非常简单,如果这就是你的意思?我同意这很不清楚。我不知道你在找什么,如果你想检查你的值是否为空,请使用null!=value
查看其中的公认答案,它提供了一些关于何时应使用或不应使用可选选项的好建议,但这肯定不是这样做的情况。“坦率地说,我认为在这里使用可选选项没有任何意义。”非常同意。1+. “这已经很好了。”“谢谢你。不客气,”阿尔帕尼亚说。如果你认为答案是有用的,请考虑接受它,在这种情况下,你也不需要谢谢你的评论。这是堆栈溢出工作的一种稍微非个人的方式。
Optional.ofNullable(abc).ifPresent(abc -> params.add("abc","123"));