[Java] 문자열 비교 방법 (equals)
Python 언어에 익숙한 개발자라면, Java에서 문자열을 비교할 때 예상치 못한 결과를 마주할 수 있다.Python에서 문자열을 비교하는 경우 == 연산자만 사용해도 문제가 없다.하지만 Java에서는 같은 문자열을 비교하더라도 == 연산자를 사용하면 false를 반환하는 경우가 있다.그 이유를 알기 위해서는 먼저 Java의 메모리 모델을 이해해야 한다. Java 메모리 모델Java에서 문자열이 메모리에 저장되는 방식을 이해하면 문자열 비교 방법을 이해하는데 도움이 된다.문자열 리터럴: 문자열 리터럴은 String Pool에 저장되며, 컴파일 시점에 동일한 값이라면 같은 메모리 주소를 공유한다.new 키워드로 생성된 문자열: new 키워드를 사용해 생성한 문자열은 Heap에 저장되며, 동일한 값을 가진..
Study/Java
2023. 6. 21.