问题
我试图找到一种方法从键盘获取achar
输入。
我试过用:
Scanner reader = new Scanner(System.in);
char c = reader.nextChar();
此方法不存在。
我尝试过c
as aString
。然而,它并不总是适用于所有情况,因为我从我的方法调用的另一种方法需要achar
作为输入。因此,我必须找到一种方法来明确地将char作为输入。
有帮助吗?
#1 热门回答(138 赞)
你可以从Scanner.next
获取第一个字符:
char c = reader.next().charAt(0);
要使用exactlyone字符,你可以使用:
char c = reader.findInLine(".").charAt(0);
要消耗严格的角色,你可以使用:
char c = reader.next(".").charAt(0);
#2 热门回答(45 赞)
设置扫描仪:
reader.useDelimiter("");
在此之后reader.next()
将返回单字符串。
#3 热门回答(16 赞)
没有API方法可以从扫描程序中获取字符。你应该在返回的String上使用scanner.next()
和invokeString.charAt(0)
方法获取String。
Scanner reader = new Scanner(System.in);
char c = reader.next().charAt(0);
为了安全地使用空格,你还可以先在字符串中调用trim()
以删除任何空格。
Scanner reader = new Scanner(System.in);
char c = reader.next().trim().charAt(0);