Java의 toCharArray() 메서드는 문자열(String)을 char 배열로 변환합니다. 이 메서드를 사용하면 문자열 내 개별 문자들을 배열 요소처럼 자유롭게 다룰 수 있으며, 공백, 숫자, 알파벳 등 모든 문자가 char 배열에 그대로 담깁니다.
코딩을 하다 보면 Java 문자열을 char 배열로 변환해야 하는 경우가 종종 있습니다. 예를 들어 학생 성적 목록을 저장하는 애플리케이션을 개발한다고 가정해 봅시다. 문자열 형태로 저장된 성적들을 배열로 변환하면 배열이 제공하는 다양한 메서드를 활용해 데이터를 훨씬 편리하게 조작할 수 있습니다.
바로 이럴 때 유용한 것이 Java의 toCharArray() 메서드입니다. toCharArray()는 문자열을 문자(char) 배열로 변환해 주는 Java 기본 내장 메서드입니다.
이 글에서는 toCharArray() 메서드의 사용법을 단계별 예제와 함께 자세히 살펴보겠습니다.
Java의 String과 Char의 차이
Java에는 텍스트 데이터를 저장하기 위한 두 가지 데이터 타입이 있습니다. String은 하나 이상의 문자로 이루어진 연속된 문자열을 저장하고, char 데이터 타입은 단일 문자 하나만을 저장합니다.
예를 들어, 초등학교 5학년 수학 반 학생의 이름을 저장한다고 해봅시다. 이름은 여러 문자로 구성되어 있으므로 String에 저장하는 것이 적합합니다. 하지만 학생 이름의 첫 글자 하나만 저장하고 싶다면 char 타입을 사용하는 것이 맞습니다.
이 차이를 인지하는 것이 중요한 이유는, 개별 문자를 다룰 때는 char 데이터 타입이 더 효율적이기 때문입니다. String 클래스에는 문자열 전용으로 제공되는 수많은 메서드들이 포함되어 있는데, 단일 문자만 다룰 때는 이러한 메서드들이 불필요하게 됩니다.
Java 문자열을 Char 배열로 변환하기
Java의 toCharArray() 메서드는 문자열을 char 배열로 변환합니다. 원본 문자열의 모든 문자(공백 포함)가 새로 생성된 char 배열에서 각각 별도의 값으로 저장됩니다.
toCharArray() 메서드의 기본 문법은 다음과 같습니다:
char[] array_name = string.toCharArray();
각 구성 요소의 의미는 다음과 같습니다:
- char[]: char 타입 요소들로 이루어진 배열을 선언하겠다는 의미입니다.
- array_name: 새로 생성되는 배열에 부여할 이름입니다.
- string: char 배열로 변환하고자 하는 대상 문자열입니다.
- toCharArray(): 해당 문자열의 값을 문자 배열로 변환하는 메서드입니다.
변환 결과로 만들어지는 char 배열의 길이는 원본 문자열의 길이와 동일합니다.
그럼 실제 예제를 통해 이 메서드가 어떻게 동작하는지 단계별로 확인해 보겠습니다.
문자열을 Char 배열로 변환하는 Java 예제
초등학교 5학년 수학 반 학생들의 성적을 처리하는 프로그램을 만든다고 가정해 봅시다. 성적은 A부터 F 사이의 값으로 주어지며, 다음과 같이 하나의 문자열에 저장되어 있다고 합시다:
ABCAAAC
하지만 우리는 배열 메서드를 활용해 성적을 조작하기 위해 이 문자열을 char 배열로 변환하고 싶습니다. 학생 성적 문자열을 문자 배열로 변환하는 코드는 다음과 같습니다:
class ConvertGrades {
public static void main(String args[]) {
String grades = "ABCAAAC";
char[] grade_list = grades.toCharArray();
for (int i = 0; i < grade_list.length; i++) {
System.out.print(grade_list[i]);
}
}
}
위 코드의 실행 결과는 다음과 같습니다:
A B C A A A C
코드의 동작 방식을 하나씩 살펴보겠습니다. 먼저 프로그램 코드를 담고 있는 public 클래스 ConvertGrades를 정의합니다. 그다음, 5학년 수학 반 학생들의 성적을 저장하는 Java 변수 grades를 선언합니다.
다음 줄에서는 toCharArray() 메서드를 사용해 grades 문자열의 내용을 char 배열로 변환하고, 그 결과를 grade_list 변수에 할당합니다. 이후 for 루프를 초기화하여 반환된 배열의 모든 요소를 순회하며, 각 문자를 콘솔에 한 줄씩 출력합니다.
결국 이 프로그램은 성적 문자열을 char 배열로 성공적으로 변환한 뒤, 그 내용을 콘솔에 출력한 것입니다.
마무리
Java의 toCharArray() 메서드는 문자열에 저장된 일련의 문자들을 char 배열로 변환하는 데 사용됩니다. 이 글에서는 toCharArray() 메서드의 기본 문법과 실제 활용 예제를 통해 사용법을 알아보았습니다.
이제 여러분은 toCharArray()를 활용하여 Java에서 문자열을 char 배열로 변환하는 데 필요한 핵심 지식을 갖추게 되었습니다. 실제 프로젝트에서 문자열 데이터를 더 유연하게 다루고 싶다면 이 메서드를 적극적으로 활용해 보세요.