字符串到整数数组

时间:2011-06-24 11:30:14

标签: java arrays

如果我有一大串数字,有没有办法将其转换为int数组? id而不是手动编写数组的每个条目......

小规模的例子:

String s ="12345";
int[] ints = new int[500];

我怎么能最终得到:

ints[0] = 1;
ints[1] = 2;
ints[2] = 3;
ints[3] = 4;
ints[4] = 5;

没有手动执行此操作?

4 个答案:

答案 0 :(得分:4)

for (int i = 0; i < s.length(); i++) {
    ints[i] = Character.getNumericValue(s.charAt(i));
}

答案 1 :(得分:3)

for (int i=0;i<s.length();i++) {
      ints[i] = Integer.parseInt(""+s.charAt(i));
   }

答案 2 :(得分:2)

您可以执行以下操作

String s ="12345";
int[] ints = new int[s.length];
for(int i=0;i<s.length;i++)
    ints[i] = s.charAt(i) - '0';

这比构建StringBuilder / String并解析它要快得多。

另一种方法是使用包装器而不是在所有

创建数组
public class Ints {
    private final String text;
    public Ints(String text) { this.text = text; }
    public int length() { return text.length(); }
    public int value(int index) { return text.charAt(index) - '0'; }
}

Ints ints = new Ints("12345");

答案 3 :(得分:1)

这是另一种选择:

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