在 Java 的 Scanner 类中,为什么语法不存在,是否有一个命令会在不使用变量nextChar()
的情况下做类似的事情?String
问问题
348 次
4 回答
4
两种解决方案:
- use
toCharArray()
:这将返回一个char[]
你可以使用 foreach 循环的对象; - 将字符串长度与
.charAt()
.
于 2013-01-07T21:58:29.587 回答
1
Java 的 Scanner 类对标记(完整的输出单元)进行操作。这通常是完整的单词、文本行、数字(整数、双精度数、浮点数等)。如果你想读取单个字符,你应该在这样的结构中使用 BufferedReader
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
替换System.in
为您用于扫描仪的任何输入。然后用于char c = (char)in.read()
从输入中读取下一个字符。
于 2013-01-07T22:04:44.647 回答
1
如果您想要 char 级别的访问权限,您可以转到下面的级别并简单地使用 InputStream 接口:
public class Test
{
public static void main(String[] args) throws Exception
{
while (true)
{
char c = (char)System.in.read();
System.out.println("[" + c + "]");
}
}
}
于 2013-01-07T22:05:59.430 回答
1
Scanner s = new Scanner(System.in);
s.next(“.{1,}”);
因此,您可以使用Scanner#next()
方法并传递仅使用一个字符作为参数的正则表达式。
您可以使用上面的示例。
于 2017-12-01T09:46:19.000 回答