我有字符串"1000:2000,3000"
,我需要把它分成3个字符串,所以像这样:
"1000"
"2000"
"3000"
我的代码如下:
int datas = 0;
String item = "";
String data = "";
String pocet = "";
List<String> items = "1000:2000,3000";
for (int ii = 0; ii < items.size(); ii++) {
System.out.println(items.get(ii));
int delkaid = items.get(ii).indexOf(":");
int delkadat = items.get(ii).indexOf(",") - items.get(ii).indexOf(":");
int delkapoctu = items.get(ii).length() - items.get(ii).indexOf(",");
for (int ite = 0; ite < delkaid; i++) {
item = item + items.get(ii).charAt(ite) + "";
}
for (int ite = 0; ite < delkadat; i++) {
data = data + items.get(ii).charAt(items.get(ii).indexOf(":") + 1 + ite) + "";
}
for (int ite = 0; ite < delkapoctu; i++) {
pocet = pocet + items.get(ii).charAt(items.get(ii).indexOf(",") + 1 + ite) + "";
}
datas = Integer.valueOf(data);
}
但我在代码中有一些错误。
答案 0 :(得分:6)
由于String
已List
分配给String[] array = str.split(":|,");
,您的代码无法编译,但您可能会分成alternation
for
相同大小的相应整数数组可用于保存整数值。这些可以在基本{{1}}循环
中处理答案 1 :(得分:4)
public static void main (final String[] args)
{
final String s = "1000:2000,3000";
final String[] a = s.split("[:,]");
for (final String n : a)
{
System.out.println(n);
}
}
输出
1000
2000
3000
答案 2 :(得分:2)
您可以使用split()
方法:
String[] tokens = str.split(":|,");
答案 3 :(得分:0)
这将在任何分隔符上分割数字
String numbers[] = line.split("\\D+");