我已经拆分了一个字符串,但是如何将每个拆分部分放入自己的字符串中呢?
示例:其中一个分割部分将说:220532
我如何将它放入自己的字符串中,以便我以后可以使用它?我一直在寻找相当多的东西,我找不到任何可以帮助我的东西,也许我正在寻找错误的地方,我不知道。
我的代码部分(拆分代码):
public void actionPerformed(ActionEvent e) {
String delim = (", ");
StringTokenizer st = new StringTokenizer("225433,1690,29040474 267067,77,1529611
237690,78,1788405 273749,79,1854885 274972,79,1952641 268946,71,867189 239419,64,420791
238742,81,2319417 159198,85,3530900 138028,90,5475735 208678,78,1696957 174967,79,1869053
290115,65,469553 212042,65,486662 359576,48,84972 201637,70,790755 240043,55,167763
282705,52,132888 244545,56,198147 261757,56,201357 281466,39,34650 239398,57,214448
100420,76,1347559 250011,51,115880 144608,72,912505 166813,67,577751 -1,1,-1 -1,-1 -1,-1
-1,-1 -1,-1 -1,-1 73106,748 -1,-1 -1,-1 92834,659 -1,-1 -1,-1 -1,-1 -1,-1 -1,-1 -1,-1 -1,-1
-1,-1", delim);
while (st.hasMoreTokens()) {
System.out.println(st.nextToken());
}
}
});
答案 0 :(得分:2)
假设你有一个类似
的字符串String number="1,2,3,4,5";
String num[]=number.split(","); //This statement split the number using delimiter ","
//means num[0]="1",num[1]="2" and so on..
答案 1 :(得分:1)
您可以将每个部分存储在List
(Java Collections框架的一部分)中......
public void actionPerformed(ActionEvent e) {
String delim = ", ";
StringTokenizer st = new StringTokenizer("225433,1690,29040474 267067,77,1529611 237690,78,1788405 273749,79,1854885 274972,79,1952641 268946,71,867189 239419,64,420791 238742,81,2319417 159198,85,3530900 138028,90,5475735 208678,78,1696957 174967,79,1869053 290115,65,469553 212042,65,486662 359576,48,84972 201637,70,790755 240043,55,167763 282705,52,132888 244545,56,198147 261757,56,201357 281466,39,34650 239398,57,214448 100420,76,1347559 250011,51,115880 144608,72,912505 166813,67,577751 -1,1,-1 -1,-1 -1,-1 -1,-1 -1,-1 -1,-1 73106,748 -1,-1 -1,-1 92834,659 -1,-1 -1,-1 -1,-1 -1,-1 -1,-1 -1,-1 -1,-1 -1,-1",
delim);
List<String> parts = new ArrayList<String>();
while (st.hasMoreTokens()) {
parts.add(st.nextToken());
}
for (String s : parts) {
// Do something with s
}
}
或者您可以使用类似String.split
的内容:
public void actionPerformed(ActionEvent e) {
String delim = ", ";
String input = "225433, ....";
String[] parts = input.split(delim);
for (String s : parts) {
// Do something with s
}
}
答案 2 :(得分:1)
创建一个字符串列表并将每个标记添加到其中。
ArrayList<String> myStrings = new ArrayList<String>();
while(st.hasMoreTokens())
{
myStrings.add(st.nextToken());
}
现在myStrings
包含您从较长的字符串中拆分的所有单个字符串。
编辑:然后要访问它们,您可以使用for-each循环(或循环标准)。
for(String number : myStrings)
{
System.out.println(number);
//sample output: "225433"
// "1690"
}
或
for(i = 0; i < myStrings.size(); i++)
{
System.out.println("Number " + i + " is: " + myStrings.get(i));
//example output: "Number 0 is: 225433"
// "Number 1 is: 1690"
}
前者更简洁,但如果你想知道你正在使用的元素的索引,那么后者是必要的。
如果您只想要第一个元素,那就是myStrings.get(0)
答案 3 :(得分:1)
使用此:
String[] splittedText = new String("your text").split(",\\s+|\\s+|,");
如果有空间,或昏迷和空间,它将分裂。它适用于你的数字。
示例:
String[] splittedText = new String("225433,1690,29040474 267067,77,1529611 237690,78,1788405 273749,79,1854885 274972").split(",\\s+|\\s+|,");
for(String s : splittedText)
System.out.println(s);