Java InputMismatchException错误。是什么导致的?

时间:2014-06-28 08:54:39

标签: java java.util.scanner inputmismatchexception

以下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 ");
    }
}

谢谢

1 个答案:

答案 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 ");