본문 바로가기

미역/자바

Optional에 대하여

 Optional 클래스는 Java8버전에서부터 지원한다.

 본 글은 내가 실제로 사용하는 부분만을 간결하게 적어놓았기 때문에, 더욱 자세한 정보가 궁금하다면 내가 참고하였던 블로그에 들어가 보는 것을 추천한다.

 참고 블로그 : https://mangkyu.tistory.com/70

 

/*
    Optional.ofNullable(getName()) : getName()에서 값이 넘어오면 값이 들어있는 Optional객체가
    반환되고 null이 넘어온다면 비어있는 Optional객체가 반환되는데, 내가 Optional객체 자체를
    사용할 일은 없을 것이다. 그래서 바로
    
    .orElse("이름이 없네") : Optional클래스 메소드로 Optional객체의 값이 들어있다면 그 값을
    반환하고 비어있다면 "이름이 없네"를 반환한다.
    
    Optional객체를 어디다가 또 쓸 일은 없을 거 같으니 할당받을 필요 없이 아래처럼 바로 
    원하는 값을 얻어내는 방식으로 쓰는 게 코드도 간결하다. 
*/
String name = Optional.ofNullable(getName()).orElse("이름이 없네");


/*
    .ofElseGet(()->new String("이름 생성")) : .orElseGet을 쓰면 값이 아니라 람다식을 사용할 수 있다.
*/
String name = Optional.ofNullable(getName()).ofElseGet(()->new String("이름 생성"));

'미역 > 자바' 카테고리의 다른 글

엑셀 시트 읽어오기  (0) 2022.04.22
Map.Entry  (0) 2022.01.20
StringBuilder  (0) 2021.12.01
그룹 합의 차이가 최소인 두 그룹으로 나누기  (0) 2021.11.15
소수 구하기  (0) 2021.11.05