【发布时间】:2013-09-22 17:16:46
【问题描述】:
我有一个用逗号分隔的数字列表的 java 字符串,我想把它放入一个数组中,只有数字。我怎样才能做到这一点?
String result=",17,18,19,";
【问题讨论】:
我有一个用逗号分隔的数字列表的 java 字符串,我想把它放入一个数组中,只有数字。我怎样才能做到这一点?
String result=",17,18,19,";
【问题讨论】:
String[] myArray = result.split(",");
这会返回一个由参数值分隔的数组,可以是正则表达式。
【讨论】:
试试split()
假设这是固定格式,
String result=",17,18,19,";
String[] resultarray= result.substring(1,result.length()).split(",");
for (String string : resultarray) {
System.out.println(string);
}
//output : 17 18 19
通过将该字符串拆分为给定正则表达式的匹配项计算的字符串数组
【讨论】:
你可以这样做:
String result ="1,2,3,4";
String[] nums = result.spilt(","); // num[0]=1 , num[1] = 2 and so on..
【讨论】:
先去掉前导逗号:
result = result.replaceFirst("^,", "");
如果您不执行上述步骤,那么您最终会得到数组的前导空元素。最后用逗号分割字符串(注意,这不会导致任何 尾随 空元素):
String[] arr = result.split(",");
一个班轮:
String[] arr = result.replaceFirst("^,", "").split(",");
【讨论】:
replaceFirst 的调用在模式中有不必要的'/'s,并且缺少替换字符串。
String result=",17,18,19,";
String[] resultArray = result.split(",");
System.out.printf("Elements in the array are: ");
for(String resultArr:resultArray)
{
System.out.println(resultArr);
}
【讨论】: