코드 그라데이션
boolean과 Boolean의 차이 본문
예제 공부를 하다가, private boolean open; 과 private Boolean open; 이 나와서 chat GPT 를 통해 차이점을 찾아보았다.
관련된 개념적 내용은 다음과 같다.
private boolean open; vs private Boolean open;
Java에서 서로 다른 데이터 유형을 나타낸다.
1. private boolean open;
- 이것은 기본 데이터 유형인 boolean을 사용하는 변수를 선언한다.
- boolean은 두 가지 값 중 하나인 true 또는 false만을 가질 수 있는 원시 데이터 유형
- 따라서 open 변수는 true 또는 false 중 하나의 값을 가질 수 있다.
2. private Boolean open;
- 이것은 래퍼 클래스인 Boolean을 사용하는 변수를 선언한다.
- Boolean은 true, false, 또는 null 중 하나의 값을 가질 수 있다.
- 따라서 open 변수는 true, false, 또는 null 중 하나의 값을 가질 수 있다.
차이점
주로 값의 범위와 초기 상태 관리에 있다.
1) private boolean open;
- 이것을 사용하면 변수는 항상 false로 초기화된다.
- 그리고 이 변수는 true 또는 false 값만 가질 수 있으며 null을 허용하지 않는다.
- 이것은 주로 boolean 변수를 사용하여 상태를 나타낼 때 유용하다.
2) private Boolean open;
- 이것을 사용하면 변수는 초기에 null로 초기화되며, true, false, 또는 null 값을 가질 수 있다.
- 이것은 때로는 "아직 초기화되지 않았음"을 나타내기 위해 사용될 수 있다.
정리
- 따라서 어떤 것을 사용할지는 변수의 목적 및 동작에 따라 다를 것.
- 일반적으로 상태를 나타내기 위한 boolean 변수는 private boolean open;과 같이 사용된다.
- 변수가 초기화되지 않았음을 나타내기 위한 경우에는 private Boolean open;과 같이 사용된다.
을 사용하면
728x90
'Java, SpringBoot 추가 공부' 카테고리의 다른 글
리포지토리 @Query, Optional<>, Timestamp (0) | 2024.03.15 |
---|---|
의존관계와 역전된 제어흐름, 스프링 어노테이션, 커스텀 어노테이션, 테스트 (0) | 2024.03.15 |
.orElseThrow에 대해 (0) | 2023.07.18 |
[Java] 클래스 배열(객체배열) 생성 예제 (0) | 2023.05.06 |
[Java] 프로그램, 프로세스, Thread (0) | 2023.05.05 |
Comments