C Programs Tutorials | IT Developer
IT Developer

Java Programs



Share with a Friend

Introduction to Java

Java Program: Convert Lowercase ↔ Uppercase Without Built-in Methods

import java.util.Scanner;

 

public class CaseConversionManual {

    public static void main(String[] args) {

 

        Scanner sc = new Scanner(System.in);

 

        System.out.print("Enter a character: ");

        char ch = sc.next().charAt(0);

 

        char converted;

 

        // Check if lowercase (ASCII 97–122)

        if (ch >= 'a' && ch <= 'z') {

            converted = (char) (ch - 32);  // Convert to uppercase

            System.out.println("Converted character: " + converted);

        }

        // Check if uppercase (ASCII 65–90)

        else if (ch >= 'A' && ch <= 'Z') {

            converted = (char) (ch + 32);  // Convert to lowercase

            System.out.println("Converted character: " + converted);

        }

        else {

            System.out.println("Not an alphabet character.");

        }

 

        sc.close();

    }

}

Output

 
OUTPUT 1:
Enter a character: g
Converted character: G 

OUTPUT 2:
Enter a character: T
Converted character: t

OUTPUT 3:
Enter a character: 5
Not an alphabet character.

Explanation

ASCII Range Logic

  • 'a' to 'z' → 97 to 122
  • 'A' to 'Z' → 65 to 90

The difference between uppercase and lowercase letters is 32.

Conversion Rules

  • Lowercase → Uppercase
  • converted = (char)(ch - 32);
  • Uppercase → Lowercase
  • converted = (char)(ch + 32);

Why No Built-in Methods?

Instead of using:

  • Character.toUpperCase()
  • Character.toLowerCase()

The program manually converts using ASCII arithmetic.