String 생성 방법의 차이

김도엽·2022년 6월 14일
0

Etc.

목록 보기
2/2
String s1 = new String("java");
String s2 = "Java";

s1은 힙 메모리에 올라가게되고,
s2는 힙 메모리 안의 String Pool이라는 특정 메모리에 올라가게 된다

s2는 값이 같을 경우 같은 주소를 보게되므로, '=='으로 비교하게 되면 주소값을 비교하게 되는데 s2만이 가능하다.
.equals()방식은 문자열을 비교한는 것이기 때문에 모두 가능하다.

즉,
new()로 생성 -> 힙 메모리에 저장하여 사용
"~~~"로 생성 -> 힙 메모리안의 String pool에 저장하여 사용

profile
즐거운

0개의 댓글