- literal로 대입 : Method 영역 안에 String Constant Pool에 저장
- new로 객체 생성 : heap 영역에 객체로 존재
- 문자열이 같은지 비교하고 싶은 경우
- str1.equals(str2)
- immutable(불변하는) : 새로 만들어서 주소값을 대입 final byte배열로 만든다.. 상수로 취급해 상수풀에 넣는다고 보면 됨.
- switch 문에서 string 비교할 시 hashcode(해시코드값, String에선 문자열에서 문자 하나하나 hashing을 한다.)비교 후 equals까지 비교한다.
- String 배열은
String[] strArr = new String[2];
이렇게 선언, 객체를 생성하고나서
strArr[0] = "String 1"; strArr[1] = "String 2";
이런 식으로 초기화를 하든지,
String[] strArr = new String[]{"String 1", "String 2"};
이렇게 초기화를 해야 한다..