以下Java过程导致InputMismatchException错误的原因是什么?
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
String input = "hello 12345\n";
Scanner s = new Scanner(input);
s.next("hello ");
}
}
谢谢
答案 0 :(得分:1)
这是因为hello[space]
不是String
中的令牌。 String
由空格分隔符标记,因此令牌如下:
String input = "hello 12345\n";
Scanner s = new Scanner(input);
while(s.hasNext()){
System.out.println(s.next());
}
//Outputs: Hello
// 12345
错误消息只是告诉您在令牌hello[space]
和hello
中找不到12345
。
如果要查找模式而不考虑分隔符的使用,String#findInLine:
s.findInLine("hello ");