값이 있을 수도 있고 없을 수도 있는 객체를 캡슐화 하는데 사용됨.
이전에는 객체를 직접 null인지 아닌지 확인했으나, Optional 을 받으면서 Null을 다루기가 좋아짐.
- 목적 -
NPE 발생을 방지하기 위해 사용함.
- Optional 을 사용하면 명시적으로 객체가 null 일 수 있다는 것을 나타냄.
메서드에 null을 반환하면 오류가 발생할 가능성이 매우 높은 경우에 '결과 없음'을 명확하게 드러내기 위해
메소드의 반환 타입으로 사용되도록 매우 제한적인 경우로 Optional을 설계
https://velog.io/@juhyeon1114/Java-Optional-%EC%82%AC%EC%9A%A9%ED%95%98%EA%B8%B0
[Java] Optional 사용하기
Optional클래스 완벼크 정리
velog.io
☘️ .OfNullable()
- Optional 객체 생성. null 일 수도 있고 아닐 수도 있는 값을 넘겨주어서 생성.
☘️ .ifPresent()
- Optional 객체의 내부가 비어있지 않다면, 함수를 실행함.
🔎 사용 방법
1. coffee.getKorName() 을 받아서, Optional 의 nullable 을 생성.
2. 만약에 객체의 내부가 존재한다면, findCoffee 에 set으로 수정.
☘️ .isPresent()
- 내부가 비어있는지 아닌지 확인.
- 존재한다면 true 를 return 함.
🔎 사용 방법
내부에 coffee 가 존재한다면
이미 존재하는 커피 임을 Exception을 던져 알려줌.
'Language > Java' 카테고리의 다른 글
[Java] 컨텍스트 스위칭 (1) | 2025.04.22 |
---|---|
[Java] 멀티스레드, 멀티태스킹, 스레드 (1) | 2025.04.20 |
[Java] Stream (0) | 2024.06.17 |
[Java] boolean , if문 (0) | 2024.06.08 |
[Java] 기타 제어자 (1) | 2024.06.08 |