我想要做的就是在有空格时拆分字符串。例如,如果输入是:
5 10
数组应为[“5”,“10”]
我试过了:
Scanner scn = new Scanner(System.in);
String[] inputs = input.split("\\p{Space}");
System.out.println(inputs[0]);
System.out.println(inputs[1]);
然而,只有5次出现,然后有一个数组越界错误。
编辑:对不起,我是个白痴。我使用:scn.next()而不是scn.nextLine()答案 0 :(得分:3)
你可以通过以下方式完成:
text.split(" ");
答案 1 :(得分:3)
这个答案有效
text.split(" "); // to split on a single space character
但似乎你没有得到你说你的输入。
您似乎正在使用Scanner#next()
返回单个标记,其中标记由空格分隔(空格字符是空格字符),而不是Scanner#nextLine()
将结束这条线,即。寻找\n
(或\r\n
)。
答案 2 :(得分:0)
使用它:
input.split("\\s+");
这不仅会分裂" 5 10"到" 5"和" 10",但会被任意数量的空格分开。例如,如果在5到10之间有4个空格,则输出将是相同的。
或者您可以简单地使用" "忽略制表符和换行符。
答案 3 :(得分:0)
这样做:
input.split(" ");
答案 4 :(得分:0)
对不起。我是个白痴。我用了: scn.next()而不是scn.nextLine()
答案 5 :(得分:-1)
将“\ p {Space}”更改为“”或“\ s +”
答案 6 :(得分:-1)
如果两个单词之间有多个空格,请使用:
text.split("\\s+");
如果输入
5 10 15
然后输出
"5","10","15"