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: 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?
Since, java is pass by value, you need to use the return value. Either print
Character.toUpperCase(c)
directly or set it to somevar
.Here Is An Example Of How You Can Change A Character To UpperCase.
char ch;
The
toUpperCase
method doesn't change the value of thechar
(it can't); it returns the uppercasedchar
. Changeto
UPDATE
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.
System.out.println(Character.toUpperCase(c));