Java按空格将字符串转换为字符串数组

时间:2014-01-09 05:52:12

标签: java arrays string

我想将字符串转换为字符串数组..我做过类似的事情:

String name = "name";
String[] letters = name.split("(?<=.)");
System.out.println("letters = " + Arrays.toString(letters));

但现在我想要这样的事情:

String name = "John Mark Lester Andrew Todd";

要打印这样的数组:

[John, Mark, Lest, Andrew, Todd]

所以我想在我的字符串中查找空格,然后将它们放入字符串数组中。你有想法这样做吗?非常感谢帮助。感谢。

6 个答案:

答案 0 :(得分:6)

您可以在whitespace上简单split()字符串。

String[] words = name.split(" ");

答案 1 :(得分:2)

根据哪个标准或字母划分字符串,需要在

下提供
  string.split(" ");

所以,你可以尝试使用这些更新的代码:::

 String name = "John Mark Lester Andrew Todd";
 String[] letters = name.split(" ");
 System.out.println("letters = " + Arrays.toString(letters));

,输出将是::

  letters = [John, Mark, Lester, Andrew, Todd]

为了更好地理解在java中拆分字符串,您可以转到此链接。 http://www.tutorialspoint.com/java/java_string_split.htm

答案 2 :(得分:1)

您可以使用split()并创建一个数组。

String name = "John Mark Lester Andrew Todd";
String[] names=name.split(" ");

答案 3 :(得分:1)

也许您可以使用StringTokenizer

答案 4 :(得分:1)

最灵活的是分割所有空格:

String names = "John  \t\t  Mark  Lester \n  Andrew Todd \r";

System.out.println(Arrays.toString(names.split("\\s+")));

输出:

[John, Mark, Lester, Andrew, Todd]

\\s+是“任何长度的任何空白字符”的正则表达式。同样,如果你只关心空格:

String names = "John  Mark  Lester   Andrew Todd  ";

System.out.println(Arrays.toString(names.split(" +")));

(输出与上述相同。)

当然,这两个人也会拆分单个空格。

答案 5 :(得分:0)

您可以使用:

String values=Arrays.toString(name.split(" "));

or

String values[] = name.split("\\s")