如何在Java中自动将输入字符转换为大写字母

时间:2014-01-15 20:17:12

标签: java char uppercase

我正在使用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”是我在终端中输入的内容

但我希望它显示为大写。我该怎么改变它?

4 个答案:

答案 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));