如何在 Java 中自动将输入字符转换为大写
我正在使用 Scanner 类来获取输入,并希望在显示时将输入转换为大写字母.这是我的代码
I am using a Scanner class to get the input and want to convert the input to uppercase letter when display it. This is my code
Scanner input = new Scanner(System.in);
System.out.print("Enter a letter: ");
char c = input.next().charAt(0);
Character.toUpperCase(c);
由于我已将其转换为大写,但输出类似于
Since I have convert it to uppercase, but the output is like
input: a
c = A;
output: Enter a letter: a
PS:字母a"是我在终端输入的
PS: The letter "a" is what I typed in the terminal
但是我希望它显示为大写字母.我怎样才能改变它?
However I want to it display as an uppercase one. How can I change it?
推荐答案
toUpperCase
方法 不会改变 char
的值(它不能);它返回大写的 char
.改变
The toUpperCase
method doesn't change the value of the char
(it can't); it returns the uppercased char
. Change
Character.toUpperCase(c);
到
c = Character.toUpperCase(c);
更新
更新后的问题现在表明大写字符将在输入时在输入时打印.Java 无法做到这一点,因为 Java 不控制操作系统如何将用户输入回显到屏幕上.我上面的解决方案只会产生额外的输出,即使它是大写的.
The updated question now indicates that the uppercased characters are to be printed as they're typed. Java cannot do that, because Java doesn't control how the O/S echoes user input to the screen. My solution above would only produce additional output, even if it is uppercased.
相关文章