Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/315.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Java中自动将输入字符转换为大写_Java_Char_Uppercase - Fatal编程技术网

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

如何在Java中自动将输入字符转换为大写,java,char,uppercase,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 附:字母“a”

我正在使用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
附:字母“a”是我在终端中输入的

但是,我希望它显示为大写字母。我怎样才能改变它

不会更改
字符的值(它不能);它返回大写的
字符
。改变

Character.toUpperCase(c);

更新


更新后的问题现在表明大写字符将在键入时打印。Java无法做到这一点,因为Java无法控制O/S如何将用户输入回显到屏幕上。我上面的解决方案只会产生额外的输出,即使它是大写的。

System.out.println(Character.toUpperCase(c))

因为java是按值传递的,所以需要使用返回值。直接打印
Character.toUpperCase(c)
,或者将其设置为某个
var

以下是一个如何将字符更改为大写的示例

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

您没有打印它…可能是@SotiriosDelimanolis的副本OP希望将tty自己键入的字符的回显大写。@Boristeider tty代表什么?他(向我们展示他)也没有打印
c
:)@SotiriosDelimanolis来自电传打字机——用来指虚拟终端。关键是,当我在tty中键入内容时,tty会回显我键入的内容(除非“回显”已关闭)-这是我认为OP希望更改的内容。我不确定这是否是问题所在。OP希望tty上的回音在键入时自动显示大写字符。是的,非常感谢。但是我仍然想知道更改代码后输入的显示情况。@Matchagery很遗憾,这在Java中是不可能的。@Matchagery TTY部分在您的问题中并不明显。请更新问题。@tman好的,我已经更新了。无论如何,谢谢你的回答,这是我代码中的一个问题。
    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));