Java若不为空则取其值的lambda表达式

摘要:
最初的编写方法是:MapMap=newHashMap();Stringtext=“”;如果(map.get(“文本”)!
 
原本的写法是:
Map<String, Object> map = new HashMap<>();
String text = "";
if(map.get("text")!=null){
    text = map.get("text").toString().trim();
}
System.out.println(text);
使用Java8的Lambda表达式则为:
Map<String, Object> map = new HashMap<>();
String text = Optional.ofNullable(map.get("text"))
        .flatMap((value) -> Optional.of(value.toString().trim()))
        .orElse("");
System.out.println(text);

或者使用map,就不需要手动包装成Optional了:

Map<String, Object> map = new HashMap<>();
map.put("text","123");
String text = Optional.ofNullable(map.get("text"))
        .map(value -> value.toString().trim())
        .orElse("");
System.out.println(text);

免责声明:文章转载自《Java若不为空则取其值的lambda表达式》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇在xcode找不到发布证书d3的常用方法和数据类型下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Android笔记之强大的buildConfigField

在进行项目开发或维护时,经常会遇到调试和发布所用到的参数值不一致的情况 例如,服务器会分测试和正式,为了能方便地更改(自动更换)服务器地址,buildConfigField就派上用场了 以前都是手动更改的,极易出错T_T buildConfigField语法如下 buildConfigField "TypeName", "FieldName", "Fiel...

Android学习笔记——xml

转自http://blog.csdn.net/sam_zhang1984 解析XML有两种方式:SAX和DOM。它们各有利弊。 DOM是把XML文档全部装载到内存中,然后当成一树进行处理。其好处是当成树处理起来比较方便,但弊端是如果XML文件比较大时,会对内存消耗比较大; SAX是逐行扫描XML文档,逐行解析,而且可以在处理XML文档过程中的任意时刻中止处...

Java泛型详解

泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。 假定我们有这样一个需求:写一个排序方法,能够对整形数组、字符串数组甚至其他任何类型的数组进行排序,该如何实现? 答案是可以使用 Java 泛型。 使用 Java 泛型的概念,我们可以写一个泛型方法来对一个对象数组排序。然后,调用该泛型方法来对整型数组、浮点数数组、字符串数组等进行排序。...

Spring Boot -- Spring Boot之@Async异步调用、Mybatis、事务管理等

这一节将在上一节的基础上,继续深入学习Spring Boot相关知识,其中主要包括@Async异步调用,@Value自定义参数、Mybatis、事务管理等。 本节所使用的代码是在上一节项目代码中,继续追加的,因此需要先学习上一节内容。 一、使用@Async实现异步调用 要在springboot中使用异步调用方法,只要在被调用的方法上面加上@Async就可以...

java过滤特殊字符的正则表达式

// 过滤特殊字符 public staticString StringFilter(String str) throws PatternSyntaxException { // 只允许字母和数字 // String regEx ="[^a-zA-Z0-9]"; // 清除掉所有特殊字符 String regEx="[`~!@#$%^&*()+...

jpa返回List&amp;lt;Map&amp;lt;String, Object&amp;gt;&amp;gt;相当于jdbctemplate的queryForlist

public classTest(){ @PersistenceContext(unitName = "manageFactory") protectedEntityManager em; public List<Map<String, Object>>getListMap(String sql){ Quer...