Optional.ofNullable(變量).orElse(默認值);
例1:求字符串 s 的長度( 為空的時候返回0 )
jdk8前寫法:
String s = getKey(); if (s == null) { return 0; } else { return s.length(); }
jdk8寫法:
String s = getKey(); return Optional.ofNullable(s).orElse("").length();
例2:循環遍歷集合
jdk8前寫法:
List<String> list = getList(); if (list != null) { for(String s: list){ System.out.println(s); } }
jdk8寫法:
List<String> list = getList(); Optional.ofNullable(list).orElse(new ArrayList<>()).forEach(o -> { System.out.println(o); });