Spring과 진짜 초면인 우리

[Optional 시리즈 1부]... 라고 거창하게 시작해보다
orElseThrow는 Java 8부터 도입된 Optional 클래스의 메서드 중 하나입니다!
Optional은 값의 존재 여부를 나타내는 컨테이너 클래스로서, 값이 존재할 수도 있고 없을 수도 있음을 표현할 수 있죠~
orElseThrow 메서드는 'Optional 객체에 값이 존재할 경우 해당 값을 반환'하고,
'값이 존재하지 않을 경우 지정된 예외'를 발생시십니다
즉, Optional 객체에서 값을 안전하게 가져오거나 지정된 예외 처리를 수행할 수 있어요!
(개인적으로 많이 애용하고 있는 메서드랍니다)

orElseThrow 메서드의 사용법 알아보고 가실게요~
Optional 객체에서 값이 존재하는 경우 해당 값을 반환하고,
값이 존재하지 않는 경우 NoSuchElementException 예외를 발생시키는 예제입니다 :
Optional<String> optionalValue = Optional.ofNullable("Hello");
String value = optionalValue.orElseThrow(NoSuchElementException::new);
위의 예제에서 optionalValue는 값이 "Hello"인 Optional 객체를 가리킵니다
orElseThrow 메서드를 사용하여 값을 가져오는데, 값이 존재하므로 해당 값을 반환합니다
하지만 값이 없는 경우에는 NoSuchElementException 예외가 발생합니다!!
orElseThrow를 사용하여 Optional 객체에서 값의 존재 여부를 확인하고 예외 처리를 수행할 수 있으므로,
NullPointerException 등의 예외를 방지하고 코드 안정성을 높일 수 있겠네요 👍👍
Optional의 다른 메서드 친구들은 다음에 알아보도록 할게요~ bye
'Spring과 진짜 초면인 우리들에게' 카테고리의 다른 글
| 객체의 불변성은 Builder 패턴으로 빌드업~! (0) | 2023.06.12 |
|---|---|
| 스프링 3계층은...스프링에게 000을 주입해달라고 대신 요청할때는... (0) | 2023.04.19 |
| 00이/가 흘러다닐 길을 만들어 볼까요? REST API URL 규.칙. (2) | 2023.04.14 |
| API가 뷰(view)를 던진다구요...? 데이터만 던진다구요...? (4) | 2023.04.12 |
| @어노테이션@스프링 너무 많아 @ㅅ@ (0) | 2023.04.11 |