char s[]={'k', 'r', '/',
'i', 'n', 'd', 'e', 'x', '.', 'h', 't', 'm', 'l'};
char t[]={'h','t','m','l'};
char s1[]= new char[t.length];
boolean chk = true;
for(int i=0; i<s.length; i++) {
s1[3-i]=s[s.length-i-1];
if(i==3) {
break;
}
}
System.out.println(t);
System.out.println(s1);
if(s1 == t) {
System.out.println(chk);
}
}
}
여기서 출력하면 t랑 s1 둘다 html 뜨고든 근데 왜 if문에서는 둘다 같지 않다고 뜰까??;;;
설명좀해줘용 형들 ㅠㅠ
'i', 'n', 'd', 'e', 'x', '.', 'h', 't', 'm', 'l'};
char t[]={'h','t','m','l'};
char s1[]= new char[t.length];
boolean chk = true;
for(int i=0; i<s.length; i++) {
s1[3-i]=s[s.length-i-1];
if(i==3) {
break;
}
}
System.out.println(t);
System.out.println(s1);
if(s1 == t) {
System.out.println(chk);
}
}
}
여기서 출력하면 t랑 s1 둘다 html 뜨고든 근데 왜 if문에서는 둘다 같지 않다고 뜰까??;;;
설명좀해줘용 형들 ㅠㅠ
if를써서 비교하는게 아니라 Arrays.equals를 써서 비교해야만 나오는거야?
s1, t 같은 경우는 문자열 객체잖아? new String() 이거. 그렇기 때문에 s1과 t에는 객체를 참조하는 주소값을 비교하기 때문에 틀리다고 난오는거야 객체의 값을 비교하기 위해서는 equals라는 객체에서 제공하는 함수를 써서 비교해야되
형 존나 친절하지? 존나 심심하거든
문자열은 == 연산으로 비교하면 아니되요