Character Replacement. Using StringBuilder, create a program to input a string from the
user and convert it to (a) reverse case (reverse the case of all characters), (b) only lowercase
characters and (c) only uppercase characters. You are not allowed to use toUppercase or
toLowercase for this question.
Let’s examine some bit patterns and ASCII codes:
The uppercase character ‘A’: 0100 0001 (ASCII Code 65)
The lowercase character ‘a’: 0110 0001 (ASCII Code 97)
From these examples, it is evident that uppercase and lowercase characters differ by one bit (bit
6, or by 32). You can easily convert a character from uppercase to lowercase (or vice versa) by
doing a bitwise exclusive or (XOR) operation with the value 32 (2^6). You can do an exclusive or
in Java by using the carat (^) symbol.