>>> 글자수의 제한과 내용물의 차이

 

char 같은 경우는 내용물이 1개의 문자로 제한되는 반면에 String은 그런 제한이 없이 문자를 담을 수 있음

 

내용물의 차이는 char는 해당 변수 안에 값을 직접적으로 가지고 있고 해당 값이 있는 좌표를 가지고 있지 않음

 

String은 char와 달리 클래스타입의 변수이기에 생성 시 해당 변수 안의 값을 가지는 게 아니라 임의로 만들어진 값이 들어있는 위치의 좌표를 내용물로 가짐.

 

char a= 'a' 면 a라는 변수 안에는 a라는 값이 있지만 

String abc='abc'는 abc라는 변수 안에는 'abc'가 아니라 'abc'라는 텍스트가 위치한 좌표 "xxxxxxx(임의)' 를 가짐.

 

이 차이점에서 발생하는 것이 ==의 사용가능 여부입니다.

 

char 같은 경우는 값이 같다면 ==를 사용할 수 있지만 String은 내용이 같더라도 String 생성시마다 서로 다른 좌표가 생성되기에 ==를 사용하면 같지 않다는 결과가 나옴.

 

이를 위한 해결책으로 .equals() 를 이용하여 스트링의 내용물이 실제 같은지를 확인하여 같은 지 여부를 파악함.

'Java' 카테고리의 다른 글

JVM 이란?  (0) 2022.06.13
자바 예외 계층  (0) 2022.06.06
제네릭(Generic)  (0) 2022.05.29
자바 기초 다지기 (feat. 나동빈)  (0) 2022.04.27
자바 큰 따옴표 출력, 백슬래시  (0) 2022.04.26

+ Recent posts