더북(TheBook)

실행하면 hello의 3번 인덱스부터 나머지 부분만 출력됩니다. 인덱스는 0번부터 시작한다는 것, 까먹지 않았죠? 자, 이때 str1을 다시 출력하겠습니다.

package javaStudy;

public class StringExam {

    public static void main(String[] args) {
        String str1 = "hello";
        String str2 = "hello";

        String str3 = new String("hello");
        String str4 = new String("hello");
        
        System.out.println(str1);
        System.out.println(str1.substring(3));
        System.out.println(str1);
    }
}

 

실행결과

hello
lo
hello

 

그러면 str1 자체는 전혀 바뀌지 않고 그대로 출력됩니다. 이렇게 한번 만들어진 String 클래스의 값은 변하지 않습니다. String 클래스가 가진 메서드들은 모두 String 값을 반환합니다.