Java,如何将字符串转换为数组

时间:2014-05-17 23:01:07

标签: java arrays string transform

我有一个字符串,例如:

String code = new String("[199, 56, 120]")

我的目标是创建只包含[]和逗号之间的数字的数组和数组; 在这种情况下,它将是例如:

array[0] = 199  
array[1] = 56
array[2] = 120

有可能做这样的事吗?

提前致谢。

2 个答案:

答案 0 :(得分:4)

您只需使用split功能。

跳过[],您可以执行以下操作:

String input = "199 56 120";
String[] array = input.split(" ");

如果您真的想要[],那么您可以使用类似

的内容
input.replace("[", "");
input.replace("]", "");

在分割之前去除字符串。

修改

无论格式是什么,数字是什么或者数量是多少,您只需根据格式编辑分割定义,所以如果您的情况是,,那么您只需使用那是分裂参数。

String input = "[number, number, number]";
String sep = ", ";
String fixedInput = input.replace("[", "").replace("]", "");
String[] array = fixedInput.split(sep);
// array[0] contains first number.
// array[1] contains second number.

如果你想要一个int []数组,那么你可以这样做:

int[] intArray = new int[array.length];
for(int i = 0; i < array.length; i++)
{
    intArray[i] = Integer.parseInt(array[i]);
}

答案 1 :(得分:1)

如果您想要一个单行解决方案:

String[] array = code.replaceAll("[^\\d ]", "").split(" ");

replaceAll()的内联调用会删除非数字/空格。