为什么Scanner类没有nextChar方法?
这确实是一个好奇心,而不是一个问题。
为什么Scanner
类没有nextChar()
方法?现在看来似乎应该当你认为它有一个事实next
,nextInt
,nextLine
等方法。
我知道您可以执行以下操作:
userChar = in.next().charAt(0);System.out.println( userChar );
但是为什么没有nextChar()
方法呢?
回答:
原因是Scanner类旨在读取以空格分隔的令牌。这是包装基础输入流的便捷类。在扫描仪之前,您所能做的只是读取单个字节,如果要读取单词或行,这将是一个很大的麻烦。使用Scanner,您可以传入System.in,它会执行许多read()操作来为您标记输入。读取单个字符是更基本的操作。
资源
您可以使用(char) System.in.read();
。
以上是 为什么Scanner类没有nextChar方法? 的全部内容, 来源链接: utcz.com/qa/427196.html