java8 Optional正确使用姿势
生活随笔
收集整理的這篇文章主要介紹了
java8 Optional正确使用姿势
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Java 8 如何正確使用 Optional
import lombok.Data; import lombok.EqualsAndHashCode; import lombok.ToString; import org.apache.commons.lang3.StringUtils;import java.util.Optional;@Data @EqualsAndHashCode(exclude={"self"}) @ToString(callSuper=true, exclude="self") public class PersonDto {private Integer id;private String name;private String password;private Double self;public boolean validateName1() {return StringUtils.equals("hjz", name);}public static boolean validateName2(String name) {return StringUtils.equals("hjz", name);}public static void main(String[] args) {PersonDto personDto = new PersonDto();personDto.setName("hjz"); // String name = Optional.ofNullable(personDto) // .map(obj -> obj.getName()) // .filter(StringUtils::isNotEmpty) // .orElseThrow(()->new IllegalArgumentException("The value of param personDto isn't available."));// String name = Optional.ofNullable(personDto) // .map(obj -> obj.getName()) // .filter(PersonDto::validateName2) // .orElseThrow(()->new IllegalArgumentException("The value of param personDto isn't available.")); String name = Optional.ofNullable(personDto).filter(PersonDto::validateName1).map(obj -> obj.getName()).orElseThrow(()->new IllegalArgumentException("The value of param personDto isn't available."));System.out.println(name);} }?
轉載于:https://www.cnblogs.com/hujunzheng/p/7299572.html
總結
以上是生活随笔為你收集整理的java8 Optional正确使用姿势的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Uvaoj 11624 - Fire!
- 下一篇: java坦克大战源码下载