在 Java 中,可以通过字符串的 toCharArray() 方法将字符串转换为字符数组,以下是详细说明和示例代码:

方法:toCharArray()
- 功能:将字符串转换为一个新的字符数组(
char[])。 - 返回值:
char类型的数组,每个元素对应字符串中的一个字符。 - 注意:修改返回的字符数组不会影响原字符串(因为字符串是不可变的)。
示例代码
public class StringToCharArray {
public static void main(String[] args) {
String str = "Hello, World!";
// 转换为字符数组
char[] charArray = str.toCharArray();
// 输出字符数组
System.out.println("字符数组内容:");
for (char c : charArray) {
System.out.print(c + " ");
}
// 修改字符数组(不影响原字符串)
charArray[0] = 'h';
System.out.println("\n修改后的字符数组:");
for (char c : charArray) {
System.out.print(c + " ");
}
System.out.println("\n原字符串未改变: " + str);
}
}
输出结果:
H e l l o , W o r l d !
修改后的字符数组:
h e l l o , W o r l d !
原字符串未改变: Hello, World!
其他方法
如果需要手动转换(例如按特定规则),可以使用循环:
String str = "Java";
char[] charArray = new char[str.length()];
for (int i = 0; i < str.length(); i++) {
charArray[i] = str.charAt(i);
}
注意事项
- 字符串不可变性:修改字符数组不会影响原字符串。
- 空字符串:如果字符串为空 ,
toCharArray()返回长度为 0 的数组。 - 性能:
toCharArray()是高效的方法,直接复制底层字符数组。
- 推荐使用:
str.toCharArray()是最直接的方式。 - 场景:需要逐个处理字符时(如遍历、修改、统计等)。
- 不可变性:记住字符串和字符数组的独立性。

