문자열

김우진·2024년 3월 23일

코드트리

목록 보기
4/4

문자열을 변경하는 방법은 크게 2가지

  1. 아예 새로운 문자열을 만들어 주는 것
  2. 각 문자를 원소로 갖는 배열로 변환하여 변경

substring() 함수를 이용해서 부분 문자열을 뽑아낸다.

substring(시작 인덱스, 끝 인덱스)
substring(0, 2) 라면 0번째 인덱스부터 2번째 인덱스 전까지 리턴한다.

substring(인덱스)
substring(3) 이면 3번째 인덱스부터 마지막까지 문자열을 자르는 것이다.
문자열의 마지막 index + 1 값을 인덱스로 지정하면 빈 문자열을 리턴한다.

이때, 음수값이나 범위를 벗어나는 값을 입력하면 StringIndexOutOfBoundsException이 발생한다.

public class Main {
    public static void main(String[] args) {
        String s = "baaana";
        s = s.substring(0, 2) + "n" + s.substring(3);
        System.out.println(s);
    }
}

=> banana

toCharArray() 함수를 이용하면 각 문자를 원소로 갖는 리스트가 만들어진다.

public class Main {
    public static void main(String[] args) {
        String s = "baaana";
        char[] arr = s.toCharArray();

        arr[2] = 'n';
        for(int i = 0; i < arr.length; i++)
            System.out.print(arr[i] + " ");
    }
}

b a n a n a

각각이 리스트 내 원소이므로, arr[2]를 통해 3번째 원소를 'n'으로 바꾸는 것이 가능해진다.

문자들로만 이루어진 리스트는 String.valueOf(문자 배열) 함수를 이용해 다시 문자열로 합쳐줄 수 있다.

public class Main {
    public static void main(String[] args) {
        String s = "baaana";
        char[] arr = s.toCharArray();

        arr[2] = 'n';
        s = String.valueOf(arr);

        System.out.println(s);
    }
}

banana

0개의 댓글