如何将String中的数字提取到数组中

时间:2015-03-02 16:29:10

标签: java arrays string

我需要将存储在String中的所有数值都放入一个数组中:

String str = "12,1,222,55";

如果我这样做,那么它将合并所有数字:

str = str.replaceAll("\\D+","");

如何得到这样的东西?:

int[] result = new int[]{12,1,122,55};

3 个答案:

答案 0 :(得分:3)

首先拆分字符串。然后将String数组中的每个元素解析为新数组

String[] s=str.split("\\D+");
int[] intarray=new int[s.length];
for(int i=0;i<s.length;i++){
   intarray[i]=Integer.parseInt(s[i]);
}

答案 1 :(得分:2)

根据一个或多个非数字字符拆分输入,然后将每个元素的数据类型转换为整数。

String[] parts = str.split("\\D+");

答案 2 :(得分:1)

String[] numbers = str.split(",");

使用int[]

将{1}添加到Integer.parseInt(numbers[i]);

如果您不知道输入字符串的确切大小,我建议使用ArrayList来实现此目的。如果您知道将有4个值,那么请使用数组。