【发布时间】:2014-08-13 12:52:59
【问题描述】:
我有一个小问题: 我有一个程序用空格分割一个字符串(只有一个 ws),但是当我将该值分配给字符串数组时,它里面只有一个对象。 (我只能打印'0'索引)。 代码如下:
public void mainLoop() {
Scanner sc = new Scanner(System.in);
String parse = "#start";
while (!parse.equals("#stop") || !parse.isEmpty()) {
parse = sc.next();
String[] line = parse.split("[ ]");
System.out.println(line[0]);
}
}
'mainLoop' 是通过方法'main' 从实例调用的。
【问题讨论】:
-
尝试在
\s上拆分,像这样:parse.split("\\s") -
Pattern应该可以工作。对于哪个输入String这会给您带来问题? -
你能写出
input和预期的result的例子吗? -
@SeniorJD 输入应该是:'hello world!'结果应该是: 0:'hello' 1:'world!'但我的结果是 0:'hello\nworld!' (数字是数组中对象的索引)。
-
@DrunkCoder 即使您输入
#stop,您的程序也永远不会结束尝试&&运算符而不是||
标签: java string split java.util.scanner