JAVA

[Java] String문자열을 char배열로 변환하는 방법 2가지

코리니덕 2021. 9. 1. 13:49

1. toCharArray() 사용

- 반복문 없이 바로 내장함수 이용해 변환가능

- 단, String을 char형태로 변환하는 것이기 때문에 char[]로 받아줘야 함

package day0901;

import java.util.Arrays;

public class Basic14 {
	public static void main(String[] args) {
		String str = "Using toCharArray()";
		
		// 변환 후 저장할 배열 초기화 - 이때, 무조건 char형태로 받기
		char[] arr = str.toCharArray();
		
		// 배열 출력
		System.out.println(Arrays.toString(arr));	
	}
}

 

결과

[U, s, i, n, g,  , t, o, C, h, a, r, A, r, r, a, y, (, )]

 

2. 반복문

- 문자열을 한 개씩 char[] 배열 안에 넣어야 함

- 문자열의 특정 인덱스에 담긴 문자를 char[] 배열 안에 넣기 위해서 charAt(인덱스) 사용 필요

package day0901;

import java.util.Arrays;

public class Basic14 {
	public static void main(String[] args) {
		String str = "Using toCharArray()";
		
		// 문자열 길이만큼 배열 생성
		char[] arr = new char[str.length()];
		
		// 문자열을 하나씩 떼어 해당 문자를 char배열에 넣기
		// 이때, charAt을 이용해 char타입으로 변환 후, 넣어야 함
		for(int i = 0; i < str.length(); i++) {
			arr[i] = str.charAt(i); 
		}
		System.out.println(Arrays.toString(arr));
		
	}
}

 

결과

[U, s, i, n, g,  , t, o, C, h, a, r, A, r, r, a, y, (, )]

 

※ 배열 내용 출력하기

- `Arrays.toString(배열변수명)` => import java.util.Arrays;

- 이때, `배열변수명.toString`으로만 하면 배열의 주솟값을 가리키게 됨