본문 바로가기

개발자/Android

안드로이드 스트링 비교시 주의 할 점~ 알파벳 첫글자 비교등과 같은...

반응형


String 내용을 비교할땐 반드시 equals 사용


1. 주소값 비교

String s1 = new String(“Hello”)
String s2 = new Sttring(“Hello”)

if(s1==s2)

정답 : ==을 이용한 비교는 내용비교가 아닌 주소를 비교하므로 False이다


2.내용비교

String s1 = new String(“Hello”)

String s2 = new String(“Hello”)

if(s1.equals(s2))

정답 : True “equals()”를 이용한 비교는 내용을 비교하므로 True

단 equals()를 이용한 내용비교는 Wrapper클래스와 String클래스만 해당된다


3.주소값 비교2

StringBuffer s1 = new String(“Hello”)

StringBuffer s2 = new String(“Hello”)

if(s1 equals(s2))

정답 : False

“equals()를 이용한 비교는 Wrapper클래스와 String클래스만 해당되므로 당근 주소비교이므로 False이다.”

멋도 모르고 if(s1==s2) 사용하다가 왜 안될까 ?????? 


반응형

더욱 좋은 정보를 제공하겠습니다.~ ^^