Java若不为空则取其值的lambda表达式
2017-09-06 09:22
253 查看
原本的写法是:
使用Java8的Lambda表达式则为:
或者使用map,就不需要手动包装成Optional了:
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 表达式
- 从Java5基础开始初识Lambda表达式——走进Java Lambda(一)
- JAVA 8 StreamAPI 和 lambda表达式 总结(四)--stream的一些聚合操作
- ()-> java8:Lambda表达式
- 深入浅出 Java 8 Lambda 表达式
- 终于Get到了Java8的Lambda表达式,记录。
- Java8之Lambda表达式的前世今生
- java8 Lambda表达式
- JAVA Lambda表达式
- Java 8 动态类型语言Lambda表达式实现原理分析
- Java8 Lambda表达式 函数式编程 方法引用
- java8 Lambda表达式的一些特点
- 一些java lambda表达式的笔记
- Java中Lambda表达式的使用
- Java Lambda表达式(一)
- Android Studio使用gradle-retrolambda支持Java8 新特性 Lambde表达式
- 深入浅出 Java 8 Lambda 表达式
- JavaSE_8系列博客——Java8的新特性(一)--Lambda表达式(1)--宏观把控
- Java 8 的 lambda 表达式
- 【Java8】Java8体验(一)lambda表达式语法