用于获取字符的扫描仪方法

2022-09-03 12:47:36

在Java中,键盘返回的方法是什么?Scannerchar

如 、用于 等。nextLine()StringnextInt()int


答案 1

要从 中获取 a,可以使用该方法。charScannerfindInLine

    Scanner sc = new Scanner("abc");
    char ch = sc.findInLine(".").charAt(0);
    System.out.println(ch); // prints "a"
    System.out.println(sc.next()); // prints "bc"

如果你需要一堆 from a ,那么将分隔符更改为空字符串可能会更方便(也许是暂时的)。这将使每次返回的长度为 1 的字符串。charScannernext()

    Scanner sc = new Scanner("abc");
    sc.useDelimiter("");
    while (sc.hasNext()) {
        System.out.println(sc.next());
    } // prints "a", "b", "c"

答案 2

您可以使用控制台 API(在 Java 6 中出现),如下所示:

Console cons = System.console();
if(cons != null) {
  char c = (char) cons.reader().read();  // Checking for EOF omitted
  ...
}

如果你只需要一行,你甚至不需要遍历 reader 对象:

String s = cons.readLine();

推荐