String's Basic
by 핫도구반응형
자바에서 선언을 할 때 묵시적 선언과 명시적 선언이 존재한다.
// 묵시적 선언
String s1 = "Victor";
String s2 = "Victor";
// 명시적 선언
String s3 = new String("Victor");
String s4 = new String("Victor");
여기서 의문이 드는 것은 s1, s2, s3, s4가 각각 같은지 즉 묵시적선언과 묵시적 선언, 묵시적 선언과 명시적 선언, 명시적 선언과 명시적 선언이 같은지 확인 할 필요가 있다.
if(s1 == s2) {
System.out.println("s1 == s2");
} else {
System.out.println("s1 != s2");
}
// true
if(s1 == s3) {
System.out.println("s1 == s3");
} else {
System.out.println("s1 != s3");
}
// false
if(s3 == s4) {
System.out.println("s3 == s4");
} else {
System.out.println("s3 != s4");
}
// false
위와 같이 묵시적 선언끼리 비교했을 경우 값만 비교하기 때문에 true
반면에 명시적 선언은 각각 메모리 주소를 참조하기 때문에 false
마찬가지로 값과 메모리주소를 참조하는 묵시적 선언과 명시적 선언을 비교시에도 같지 않은 결과가 도출된다.
반응형
'JAVA > OLD' 카테고리의 다른 글
| Set(HashSet, TreeSet, LinkedHashSet) (0) | 2024.07.29 |
|---|---|
| List 인터페이스 (ArrayList & LinkedList) (0) | 2024.07.29 |
| Generic (0) | 2024.07.27 |
| StringBuffer & StringBuilder (0) | 2024.07.27 |
| String method (0) | 2024.07.27 |
블로그의 정보
AquaMan
핫도구