我正在使用Scanner类来获取输入,并希望在显示时将输入转换为大写字母。这是我的代码
Scanner input = new Scanner(System.in);
System.out.print("Enter a letter: ");
char c = input.next().charAt(0);
Character.toUpperCase(c);
因为我已将其转换为大写,但输出类似于
input: a
c = A;
output: Enter a letter: a
PS:字母“a”是我在终端中输入的内容
但我希望它显示为大写。我该怎么改变它?
答案 0 :(得分:6)
toUpperCase
method不会更改char
的值(它不能);它返回大写的char
。变化
Character.toUpperCase(c);
到
c = Character.toUpperCase(c);
<强>更新强>
现在更新的问题表明,在键入时,将打印大写字符。 Java无法做到这一点,因为Java无法控制O / S如何回应用户对屏幕的输入。我上面的解决方案只会产生额外的输出,即使它是大写的。
答案 1 :(得分:1)
的System.out.println(Character.toUpperCase(C));
答案 2 :(得分:0)
因为java是按值传递的,所以需要使用返回值。直接打印Character.toUpperCase(c)
或将其设置为某个var
。
答案 3 :(得分:0)
以下是如何将字符更改为UpperCase的示例。
char ch;
System.out.println("Input Characters:");
ch = (char) System.in.read();
System.out.println("Character Is: " + ch);
sc.nextLine();
System.out.println("Upper Case: " + Character.toUpperCase(ch));