이 글에서는 Java Char를 String으로 변환하는 방법과 String을 Char 배열로 변환하는 방법을 알아보겠습니다.
Java Char를 String으로 변환
Java Char를 String으로 변환하기 전에 먼저 이 두 가지의 기본적인 차이점을 살펴봅시다.
- Char는 Java에서 기본 데이터 유형(primitive data type)이며 String은 Java에서 클래스(class)입니다.
- Char는 단일 문자(single character)를 나타내며 String은 0개 이상의 문자를 포함할 수 있습니다. 즉, String은 Char의 배열입니다.
Java 프로그램에서 Char를 정의할 때는 작은 따옴표 (‘)를 사용하고 String을 정의할 때는 큰 따옴표 (“)를 사용합니다. String은 특별한 클래스이므로 큰 따옴표를 사용하여 문자열을 정의하는 옵션이 주어집니다. 또한 new 키워드를 사용하여 String을 만들 수도 있습니다.
Java Char를 String으로 변환하는 예제
Char를 String으로 변환하는 데 String.valueOf(char c) 또는 Character.toString(char c)를 사용할 수 있습니다. 또한 문자열 연결을 통해 암시적으로 변환할 수 있습니다.
아래는 Char를 String으로 변환하는 데 이러한 메서드를 사용하는 예제 프로그램입니다.
public class JavaCharToString {
public static void main(String[] args) {
char c = 'X';
String str = String.valueOf(c);
String str1 = Character.toString(c);
String str2 = "" + c;
System.out.println(c + " char을 String으로 변환 (String.valueOf(char c) 사용) = " + str);
System.out.println(c + " char을 String으로 변환 (Character.toString(char c) 사용) = " + str1);
System.out.println(c + " char을 String으로 변환 (문자열 연결(char c) 사용) = " + str1);
}
}
결과:
X char을 String으로 변환 (String.valueOf(char c) 사용) = X
X char을 String으로 변환 (Character.toString(char c) 사용) = X
X char을 String으로 변환 (문자열 연결(char c) 사용) = X
java.lang.Character는 기본 Char 데이터 유형을 위한 래퍼 클래스(wrapper class)입니다. Character.toString(char c)은 내부적으로 String.valueOf(char c) 메서드를 호출하므로 Char를 String으로 변환하는 데 String 클래스 함수를 사용하는 것이 좋습니다.
Java String을 Char 배열로 변환
String은 Char의 배열이기 때문에 문자열을 Char 배열로 변환할 수 있습니다. String 클래스에는 특정 인덱스에서 Char를 가져오는 메서드도 있습니다. 문자열을 Char 배열로 변환하는 간단한 프로그램을 살펴보겠습니다.
import java.util.Arrays;
public class JavaStringToCharArray {
public static main(String[] args) {
String str = "harostudio.co.kr";
// 특정 인덱스에서 Char 가져오기
char c = str.charAt(0);
// String에서 Char 배열로 변환
char[] charArray = str.toCharArray();
// 문자열 길이 및 반복문 활용
char[] charArray2 = new char[str.length()];
for (int i = 0; i < str.length(); i++)
{
charArray2[i] = str.charAt(i);
}
System.out.println(str + " 문자열 인덱스 0의 문자 = " + c);
System.out.println(str + " 문자열을 문자 배열로 변환 = " + Arrays.toString(charArray));
System.out.println(str + " 반복문으로 = " + Arrays.toString(charArray2));
}
}
결과:
harostudio.co.kr 문자열 인덱스 0의 문자 = h
harostudio.co.kr 문자열을 문자 배열로 변환 = [h, a, r, o, s, t, u, d, i, o, ., c, o, ., k, r]
harostudio.co.kr 반복문으로 변환 = [h, a, r, o, s, t, u, d, i, o, ., c, o, ., k, r]
문자열 객체에서 Char를 가져오려면 chatAt(int index) 메서드를 사용할 수 있습니다. toCharArray() 메서드는 문자열의 Char 배열을 반환합니다. 여기서는 Arrays.toString(char[] ca) 메서드를 사용하여 Char 배열을 읽기 쉬운 형식으로 출력합니다.
Char를 String으로, String을 Char 배열로 변환하는 방법에 대한 내용은 여기까지입니다.