1. String class
- 최초 선언 : String str = new String("Hello");
- 이후 str은 String class에 내장된 메소드들을 사용할 수 있다.
2. String class 메소드
- str.length(); 문자열 길이를 구한다.
- str.concat("str2"); 문자열을 붙여 출력하되, 기존 참조변수에 담겨진 문자열은 변하지 않는다(다른 객체를 참조하기 위해선 다른 참조변수를 사용해야 함).
![](https://velog.velcdn.com/images%2Fgyrbs22%2Fpost%2F48d2330b-24f9-44e8-8291-f8fb37da950b%2Fimage.png)
즉, 기존 str은 불변 클래스이기 때문에 기존 선언된 형태인 hello 문자열을 계속 참조하며 concat으로 붙여진 문자열은 참조하지 않는다.
![](https://velog.velcdn.com/images%2Fgyrbs22%2Fpost%2Fce487d25-2d1c-447f-878a-cb827b93851f%2Fimage.png)
이를 참조하게 하기 위해선 또 다른 참조변수를 생성해서, 해당 메소드를 반영한 객체를 별도로 가르키게 하도록 구성해주면 된다.
- str.substring(startIndex or startIndex, endIndex) 문자열의 시작인덱스부터 마지막인덱스(혹은 선정인덱스)까지 부분 출력한다.
3. 참조자료
프로그래머스 String class 강의