728x90

Java를 다루다 보면 문자열의 각 문자를 개별적으로 처리하거나 저장해야 하는 상황이 종종 발생합니다.

 

예를 들어, 문자열을 한 글자씩 분리하여 특정 작업을 수행하거나, 문자열의 일부를 수정하고자 할 때, 문자열 ➡️ 문자 배열로 변환하는 것이 유용합니다.

 

이때 유용하게 사용할 수 있는 메서드가 바로 toCharArray()입니다. 이 글에서는 toCharArray() 메서드의 기능과 사용법, 그리고 실제 예제를 통해 그 활용 방법을 자세히 살펴보겠습니다.

 

toCharArray()란❓

public char[] toCharArray()

 

toCharArray() 메소드는 문자열(String) ➡️ 문자 배열(char [])로 변환하는 데 사용됩니다.

 

public class ToCharArrayExample {
    public static void main(String[] args) {
        String str = "Hello, World!";
        char[] charArray = str.toCharArray();
        
        // 배열의 각 문자를 출력
        for (char c : charArray) {
            System.out.print(c + " ");
        }
    }
}

// H e l l o ,   W o r l d !

 

 

toCharArray()의 예제

문자 단위 처리

String str = "example";
char[] charArray = str.toCharArray();
for (char c : charArray) {
    // 각 문자에 대한 처리
}

 

 

문자열 변환

String str = "example";
char[] charArray = str.toCharArray();
charArray[0] = 'E';
String newStr = new String(charArray);
System.out.println(newStr); // "Example"

 

문자열을 직접 수정할 수는 없지만, 문자 배열로 변환한 후 개별 문자를 수정하고 new Sting를 통해 다시 문자열로 변환할 수 있습니다.

 

문자열 뒤집기

public class ReverseString {
    public static void main(String[] args) {
        String str = "Hello";
        char[] charArray = str.toCharArray();
        for (int i = 0, j = charArray.length - 1; i < j; i++, j--) {
            char temp = charArray[i];
            charArray[i] = charArray[j];
            charArray[j] = temp;
        }
        String reversedStr = new String(charArray);
        System.out.println(reversedStr); // "olleH"
    }
}

 

 

toCharArray() 주의 사항 ❗️

public class ToCharArrayIndependence {
    public static void main(String[] args) {
        String originalStr = "ABC";
        char[] charArray = originalStr.toCharArray();

        // 문자 배열의 첫 번째 문자를 변경
        charArray[0] = 'X';

        // 원래 문자열과 변경된 문자 배열 출력
        System.out.println("Original String: " + originalStr);
        System.out.println("Modified Char Array: " + new String(charArray));
    }
}
Original String: ABC
Modified Char Array: XBC

 

toCharArray() 메서드는 원래 문자열과 독립적인 새로운 문자 배열을 생성합니다. 따라서 배열을 수정해도 원래 문자열에는 영향을 미치지 않습니다.