[꼼꼼한 개발자] 꼼코더
[JAVA] - Optional이란? 간단하고 쉽게 이해하기 (Optional 객체 생성 예제) 본문
반응형
📚 Optional에 대하여
Java 8부터 도입된 Optional은 값이 없는 경우를 표현하기 위한 클래스이다.
Optional 클래스는 제네릭을 사용하여 어떤 타입의 객체도 감싸서 담을 수 있다.
Optional 객체는 값이 존재할 수도 있고, 없을 수도 있다.
이는 NullPointerException 예외를 방지할 수 있고, 코드의 안정성을 높이며 가독성을 향상시킨다.
🥜 Optional 객체 생성(이론)
Optional 객체를 생성하려면, of(), ofNullable(), empty() 등의 정적 팩토리 메서드를 사용할 수 있다.
- of() 메서드 : 값이 null이 아닌 경우에만 Optional 객체를 생성
- ofNullable() 메서드 : 값이 null인 경우에도 Optional 객체를 생성.
- empty() 메서드 : 값을 갖지 않는 빈(empty) Optional 객체를 생성.
🏃🏻♂️ Optional 객체 접근
Optional 객체에 접근하기 위해서는 get() 메서드를 사용.
하지만 이 방법은 값이 없는 경우에 예외가 발생할 수 있으므로, isPresent() 메서드를 사용하여
값이 존재하는지 여부를 먼저 확인하는 것이 좋다.
또한, Optional 객체에 값이 있을 경우에는
orElse()나 orElseGet() 메서드를 사용하여 대체 값을 제공할 수 있다.
🖇️ 다른 메서들과의 연결
Optional 객체는 다른 메서드들과 연결하여 사용할 수 있다.
예를 들어, map() 메서드를 사용하여 Optional 객체의 값을 변환하거나,
filter() 메서드를 사용하여 Optional 객체의 값을 검사할 수 있습니다.
👨🏻💻 Optional 객체 생성(실습)
import java.util.Optional;
public class OptionalExample {
public static void main(String[] args) {
String str = "Hello, World!"; // null이 아닌 값을 가지는 문자열 변수
Optional<String> optionalStr = Optional.of(str); // Optional 객체 생성, 값이 null이 아니므로 of() 메서드 사용
System.out.println(optionalStr); // 출력: Optional[Hello, World!]
String nullStr = null; // null 값을 가지는 문자열 변수
Optional<String> optionalNullStr = Optional.ofNullable(nullStr); // Optional 객체 생성, 값이 null이므로 ofNullable() 메서드 사용
System.out.println(optionalNullStr); // 출력: Optional.empty
Optional<String> emptyOptional = Optional.empty(); // 값을 갖지 않는 빈 Optional 객체 생성
System.out.println(emptyOptional); // 출력: Optional.empty
}
}
'간단하고 쉽게 > JAVA' 카테고리의 다른 글
[JAVA] - MyBatis란?, 마이바티스란?(예제코드) 간단하고 쉽게 이해하기 (0) | 2023.03.20 |
---|---|
[JAVA] - 명시적 형변환 연산(Casting), 암묵적 형변환(Promotion) 간단하고 쉽게 이해하기 (0) | 2023.03.16 |
[JAVA] - HashMap, LinkedHashMap, TreeMap, Hashtable 차이점 간단하고 쉽게 이해하기 (0) | 2022.12.22 |
[JAVA] - 제네릭이란?(Generic) 간단하고 쉽게 이해하기 (제네릭의 장점) (0) | 2022.12.20 |
[JAVA] - SDK, JDK 간단하고 쉽게 이해하기 (0) | 2022.12.20 |
Comments