杰瑞科技汇

Java字符串如何转字符数组?

在 Java 中,将字符串(String)转换为字符数组(char[])非常简单,主要使用 String 类的 toCharArray() 方法,以下是详细的说明和示例:

Java字符串如何转字符数组?-图1
(图片来源网络,侵删)

方法 1:使用 toCharArray()(最常用)

这是最直接的方法,直接将字符串中的每个字符复制到一个新的字符数组中。

语法

char[] charArray = str.toCharArray();

示例

public class Main {
    public static void main(String[] args) {
        String str = "Hello, World!";
        // 转换为字符数组
        char[] charArray = str.toCharArray();
        // 遍历并打印字符数组
        for (char c : charArray) {
            System.out.println(c);
        }
        // 输出字符数组(直接打印)
        System.out.println("字符数组: " + java.util.Arrays.toString(charArray));
    }
}

输出

H
e
l
l
o
,
W
o
r
l
d
!
字符数组: [H, e, l, l, o, ,,  , W, o, r, l, d, !]

方法 2:手动遍历字符串(适用于部分需求)

如果需要对转换过程进行更多控制(例如过滤某些字符),可以手动遍历字符串并填充字符数组。

示例

public class Main {
    public static void main(String[] args) {
        String str = "Java";
        char[] charArray = new char[str.length()];
        // 手动填充字符数组
        for (int i = 0; i < str.length(); i++) {
            charArray[i] = str.charAt(i);
        }
        // 输出结果
        System.out.println("字符数组: " + java.util.Arrays.toString(charArray));
    }
}

输出

字符数组: [J, a, v, a]

方法 3:使用 getChars()(适用于部分区域复制)

如果只需要复制字符串的某一部分到字符数组,可以使用 getChars() 方法。

语法

str.getChars(srcBegin, srcEnd, dest, destBegin);
  • srcBegin:源字符串起始索引(包含)。
  • srcEnd:源字符串结束索引(不包含)。
  • dest:目标字符数组。
  • destBegin:目标数组的起始位置。

示例

public class Main {
    public static void main(String[] args) {
        String str = "Hello, World!";
        char[] charArray = new char[5]; // 目标数组长度为5
        // 复制字符串的索引 0 到 5(不包含5)到字符数组的起始位置 0
        str.getChars(0, 5, charArray, 0);
        // 输出结果
        System.out.println("字符数组: " + java.util.Arrays.toString(charArray));
    }
}

输出

字符数组: [H, e, l, l, o]

方法 适用场景 特点
toCharArray() 完整转换字符串 最简单、最常用
手动遍历 需要额外逻辑(如过滤) 灵活但代码稍长
getChars() 仅复制字符串的某一部分 可指定源和目标范围

根据需求选择合适的方法即可!

Java字符串如何转字符数组?-图2
(图片来源网络,侵删)
分享:
扫描分享到社交APP
上一篇
下一篇