string과 char의 차이점

미해결질문
김앙두 프로필
김앙두 2020.01.23

string = 문자열

char = 문자

아닌가요? 자료형 배울때 말해준거 같은데...

강동훈 프로필
강동훈 1달 전

차이점은 크게 2가지로 글자수의 제한과 내용물의 차이입니다.

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

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

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

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

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

이 차이점에서 발생하는 것이 ==의 사용가능 여부입니다. char 같은 경우는 값이 같다면 ==를 사용할 수 있지만 String은 내용이 같더라도 String 생성시마다 서로 다른 좌표가 생성되기에 ==를 사용하면 같지 않다는 결과가 나옵니다. 이를 위한 해결책으로 .equals() 를 이용하여 스트링의 내용물이 실제 같은지를 확인하여 같은 지 여부를 파악합니다.

지식공유자 되기
많은 사람들에게 배움의 기회를 주고,
경제적 보상을 받아보세요.
지식공유참여
기업 교육을 위한 인프런
“인프런 비즈니스” 를 통해 모든 팀원이 인프런의 강의들을
자유롭게 학습하는 환경을 제공하세요.
인프런 비즈니스