0

我在一个字符串上有一个短语,我想将它拆分为其他 5 个或更多字符串而不带空格。例如:

String test = "hi/ please hepl meok?";

而且我要 :

String temp1 = "hi/";
String temp2 = "please";
String temp3 = "help";
String temp4 = "meok?";

我不想将它添加到数组中,因为我想将 temp4 拆分为另外 3 个字符串。例如

->> 拆分后的 temp4:

temp4 = "me"
temp5 = "ok"
temp6 = "?"

之所以问这个问题,是因为我想编写一个方法来解码带有一些解码器的 LinkedHashMap 集中的字符串短语。谢谢。如果我的方法不对,请指导我!:)

4

2 回答 2

5

我不想将它添加到数组中,因为我想将 temp4 拆分为另外 3 个字符串。例如

用 拆分字符串String#split,然后将结果数组的各个部分分配给您的各个变量:

String[] parts = theOriginalString.split(" ");
String temp1 = parts[0];
String temp2 = parts[1];
String temp3 = parts[2];
String temp4 = parts[3];
String temp5 = parts[4];

我发现让这些单独的命名变量的想法有点可疑,但我可以看到用例——例如,如果你要着手处理一堆有用的名称使代码更清晰的逻辑。

于 2013-01-09T01:47:25.230 回答
1

给定您的字符串, split() 将解决问题

String tokens[] = test.split(" ");

然后,tokens [0] 将是"hi/",tokens[1] 将是"please"等等。

编辑在使用 split 的任何情况下,您都将首先将字符串存储在数组中,如果您想单独循环它们,请使用 StringTokenizer。

 StringTokenizer st = new StringTokenizer(test);
 while (st.hasMoreTokens()) {
     System.out.println(st.nextToken());
 }
于 2013-01-09T01:46:33.840 回答