如何将数字字符串标记化为 int 数组

How to tokenize from a String of numbers to an int array

我有一个这样的字符串

String s=1956;

并想将此 String 转换为 int[] 数组

[1,9,5,6];

有什么建议吗?

一个选项是

char[] nums = s.toCharArray();
int[] parsed = new int[nums.length];
for (int i = 0; i < nums.length; ++i){
    parsed[i] = Integer.parseInt(String.valueOf(nums[i]));
}

您可以使用 Stringsplit 方法将其转换为 String[],然后您可以迭代它调用 Integer.parseInt 来填充 int[]

我会这样做:

int[] digits = new int[s.length()];
for (int i = 0; i < digits.length; ++i) {
    digits[i] = s.charAt(i)-'0';
}

我永远无法让自己使用 Integer.parseInt(String) 只是为了将数字字符转换为整数。

我将提供一个最简单的解决方案;

String s = "1956";
        int array[] = new int[4];

        array[0] = Integer.parseInt(s.charAt(0)+"");
        array[1] = Integer.parseInt(s.charAt(1)+"");
        array[2] = Integer.parseInt(s.charAt(2)+"");
        array[3] = Integer.parseInt(s.charAt(3)+"");

显然循环可以做到这一点,但你真的没有告诉我们你的情况