


구조적 차이에 따른 동작 차이
1. 값의 저장과 접근
long:
값 자체를 바로 사용.
연산 시 빠르게 처리됨.
Long:
내부적으로 long 값이 들어 있지만, 사용 시 힙의 객체 참조를 통해 접근.
박싱/언박싱 발생.
2. null 가능 여부
long x = null; → 컴파일 에러
Long y = null; → 정상, 객체가 없는 상태를 표현 가능
Long을 쓰는 이유
DB의 PK/ID는 생성되기 전 null 상태를 표현해야 하므로 Long 사용.
컬렉션(List, Map 등)에 담기 위해 Long 사용.
메서드나 기능을 사용해야 할 경우 Long 사용.
ORM 매핑(JPA, MyBatis 등)에서 nullable 컬럼과 대응하기 위해 Long 사용.
요약
long = 스택에 값 직접 저장, null 불가, 빠름.
Long = 힙 객체 참조 저장, null 가능, 메서드 사용 가능.
'tech > Spring' 카테고리의 다른 글
| [Spring] Config (0) | 2025.07.09 |
|---|---|
| [Spring] SOLID 원칙을 잘 지키고 있는가 (0) | 2025.07.04 |
| [Spring] enum이란? (0) | 2025.07.03 |
| [Spring] 좋은 객체 지향 프로그래밍이란? (1) | 2025.06.24 |
| [Spring] 스프링이란? (5) | 2025.06.24 |