-
JAVA - 문자열 선언CS/Java 2021. 2. 27. 17:55
문자열 선언
리터럴로 문자열 할당
String str1 = "abcd"; String str2 = "abcd";
- 상수풀에 문자열이 할당되며 같은 데이터가 존재하면 해당 데이터의 주소를 참조한다.
- 리터럴로 할당된 문자열은 == 연산을 할 수 있다. 즉, 위와 같은때 str1 == str2는 true가 된다.
객체로 문자열 할당
String str1 = new String("abcd"); String str2 = new String("abcd");
- 메모리의 heap영역에 새로운 영역을 할당한다.
- 객체로 할당된 문자열은 서로 다른 주소값을 가지기 때문에 == 연산으로 내용이 같은지 확인할 수 없다.
reference
velog.io/@hygoogi/%EA%B8%B0%EC%88%A0-%EB%A9%B4%EC%A0%91-%EC%A7%88%EB%AC%B8-%EB%AA%A8%EC%9D%8C
'CS > Java' 카테고리의 다른 글
JAVA - 데이터 타입, 변수 (0) 2021.02.28 JAVA - Servlet (0) 2021.02.28 JAVA - 클래스, 객체, 인스턴스 (0) 2021.02.27 JAVA - Wrapper Class (0) 2021.02.27 JAVA - JDK , JRE (0) 2021.02.26