Scanner.useDelimiter 未按预期工作
Scanner.useDelimiter not working as expected
实际答案应该是 stack
和 overflow
在两行中输入 stack.overflow
;使用的分隔符是“.”。
输出中没有显示任何内容:
Scanner p = new Scanner(System.in);
p.useDelimiter(".");
System.out.println("delimiter is "+ p.delimiter());
\this above line is producing expected output
while(p.hasNext()){
System.out.println(p.next());
}
用于输入 stack.overflow
和分隔符“.”预期输出是
stack
overflow
p.useDelimiter(".");
分隔符是一个正则表达式,正则表达式中的.
表示"every possible character"。您正在使用 "every possible character" 作为分隔符,使 Scanner return 每对字符之间的所有内容,这将导致很多空字符串。
改为转义点:
p.useDelimiter("\.");
输出:
delimiter is \.
stack
overflow
实际答案应该是 stack
和 overflow
在两行中输入 stack.overflow
;使用的分隔符是“.”。
输出中没有显示任何内容:
Scanner p = new Scanner(System.in);
p.useDelimiter(".");
System.out.println("delimiter is "+ p.delimiter());
\this above line is producing expected output
while(p.hasNext()){
System.out.println(p.next());
}
用于输入 stack.overflow
和分隔符“.”预期输出是
stack
overflow
p.useDelimiter(".");
分隔符是一个正则表达式,正则表达式中的.
表示"every possible character"。您正在使用 "every possible character" 作为分隔符,使 Scanner return 每对字符之间的所有内容,这将导致很多空字符串。
改为转义点:
p.useDelimiter("\.");
输出:
delimiter is \.
stack
overflow