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

Java,如何将字符串转换为数组,java,arrays,string,transform,Java,Arrays,String,Transform,我有一个字符串,例如: String code = new String("[199, 56, 120]") array[0] = 199 array[1] = 56 array[2] = 120 我的目标是创建一个数组,该数组只包含[]中的数字和两个逗号; 在这种情况下,例如: String code = new String("[199, 56, 120]") array[0] = 199 array[1] = 56 array[2] = 120 有可能这样做吗 提前感谢。您

我有一个字符串,例如:

String code = new String("[199, 56, 120]")
array[0] = 199  
array[1] = 56
array[2] = 120
我的目标是创建一个数组,该数组只包含
[]
中的数字和两个逗号; 在这种情况下,例如:

String code = new String("[199, 56, 120]")
array[0] = 199  
array[1] = 56
array[2] = 120
有可能这样做吗

提前感谢。

您只需使用该功能即可

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

String input = "199 56 120";
String[] array = input.split(" ");
int[] intArray = new int[array.length];
for(int i = 0; i < array.length; i++)
{
    intArray[i] = Integer.parseInt(array[i]);
}
如果您真的想要
[
]
,那么您可以使用

input.replace("[", "");
input.replace("]", "");
在分开绳子之前先把它剥开

编辑

无论格式是什么、数字是什么或数字是多少,您只需根据格式编辑拆分定义,因此如果您的case is
,则只需将其用作拆分参数

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[]数组,则可以执行以下操作:

String input = "199 56 120";
String[] array = input.split(" ");
int[] intArray = new int[array.length];
for(int i = 0; i < array.length; i++)
{
    intArray[i] = Integer.parseInt(array[i]);
}
int[]intArray=newint[array.length];
for(int i=0;i
您只需使用该功能即可

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

String input = "199 56 120";
String[] array = input.split(" ");
int[] intArray = new int[array.length];
for(int i = 0; i < array.length; i++)
{
    intArray[i] = Integer.parseInt(array[i]);
}
如果您真的想要
[
]
,那么您可以使用

input.replace("[", "");
input.replace("]", "");
在分开绳子之前先把它剥开

编辑

无论格式是什么、数字是什么或数字是多少,您只需根据格式编辑拆分定义,因此如果您的case is
,则只需将其用作拆分参数

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[]数组,则可以执行以下操作:

String input = "199 56 120";
String[] array = input.split(" ");
int[] intArray = new int[array.length];
for(int i = 0; i < array.length; i++)
{
    intArray[i] = Integer.parseInt(array[i]);
}
int[]intArray=newint[array.length];
for(int i=0;i
如果您想要单线解决方案:

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

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

如果需要单行解决方案:

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

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

问题是字符串是随机的,每次都有以下格式:[数字,数字,数字](数字可以是0到200)请看我的编辑,你能更精确一点吗?无论数字是多少,这都是完美的。但是数组应该是int数组而不是字符串数组。。如何修复?问题是字符串是随机的,每次都有以下格式:[数字,数字,数字](数字可以从0到200)看看我的编辑,你能更精确一点吗?无论数字是多少,这都是完美的。但是数组应该是int数组而不是字符串数组。。如何解决?有趣的解决方案。有趣的解决方案。