Tech&WK_SRDC_Project_Think
purpose : techRoad 过程中的点滴思考
2020-07-04
idom
- Optional lambda 处理, 及相关的 API publish ( <java in action 2> P253)
- Optional 封装 try - catch , 封装的额OptionalUtility 将 String 转换为 Optional<Integer> (<J I A > p260 )
1 package techRoad.java.Optional; 2 3 import java.util.Optional; 4 5 public class OptionalUtility { 6 7 public static Optional<Integer> stringToInt(String originalStr){ 8 try{ 9 return Optional.of(Integer.parseInt(originalStr)); 10 }catch (NumberFormatException ex){ 11 return Optional.empty(); 12 } 13 } 14 }
public int readDuration(Properties props, String s) { return Optional.ofNullable(props.getProperty(s)) .flatMap(OptionalUtility::stringToInt) .filter(i -> i > 0) .orElse(0); }

浙公网安备 33010602011771号