JAVA

태태개발일지 - 김영한 고급 JAVA LAMBDA

태태코 2025. 7. 28. 14:24
반응형

 

강의 링크

https://inf.run/EXqku

 

김영한의 실전 자바 - 고급 3편, 람다, 스트림, 함수형 프로그래밍| 김영한 - 인프런 강의

현재 평점 5점 수강생 3236명인 강의를 만나보세요. 최신 자바에 꼭 필요한 람다, 스트림, 자바를 활용한 함수형 프로그래밍 기술을 기초부터 실무 레벨까지 깊이있게 학습합니다. 람다, 함수형

www.inflearn.com

 

JAVA OPTIONAL

 

optional

Java의 Optional은 NullPointerException을 방지하고, 코드ㅢ 명확성을 높이기 위해 등장한 컨테이너 클래스다.


그럼 언제쓰는가?

  1. Nullable한 값 처리
    직접 null 체크 로직을 넣는 대신 Optional을 활용해 더 명확하고 안전하게 값을 다룰 수 있다.
  2. NullPointerException 방지
    말그대로 NullPointerException 방지하기 위해서 사용한다.
  3. 코드의 의도 명확화
    메서드의 반환타입이 Optinal일 경우에는 이 값이 없을 수도 있다 라는 점이 명확하게 드러난다.

 

optional기능

 

1. get()
    Optional에 값 비어있으면 예외 발생(내부적으로 값이 반드시 있다는 확신이 있을 때만 사용)

 

2. orElse()

    optional에 값 존재할경우 존재하는 값, 존재하지않을 경우 기본값 반환

    ex) Optional.of("Hello");

 

3. orElseThrow()

    Optional에 값 비어있으면 예외 발생

    ex) String value = opt.orElseThrow(() -> new NoSuchElementException("기본값") );

 

4. isEmpty()

   값이 있으면 true, 없으면 false 반환 11버전 이상

 

5. isPresent()
    
값이 있으면 true, 없으면 false 반환 11버전 전

 

 

반응형