Program to find ASCII value for a character in JAVA

To find the ASCII value of a character in Java, you can simply cast the character to an integer.

The integer value corresponds to the ASCII value of that character.

In this article you’ll find how to get ASCII value for a character in JAVA

  1. What is ASCII? 📚
  2. Why is ASCII Important in Programming? 🌟
  3. How to Find ASCII Value of a Character in Java 🚀
  4. Conclusion 🏁
  5. Example Output 💻

What is ASCII?

ASCII, or American Standard Code for Information Interchange, is a character encoding standard that assigns unique numerical values to characters, enabling computers and devices to store and manipulate text. Each character is represented by a 7-bit binary code, allowing for a total of 128 possible characters, which include:

  • Uppercase Letters: A-Z (65-90)
  • Lowercase Letters: a-z (97-122)
  • Digits: 0-9 (48-57)
  • Special Characters: Including punctuation marks and control characters (0-31, 33-47, 58-64, 91-96, 123-126)

ASCII is foundational in computer science, as it provides a common way to represent text across different systems.

Why is ASCII Important in Programming?

ASCII is crucial for several reasons:

  1. Standardization: It provides a uniform way to encode text, ensuring compatibility between different systems and programming languages.

  2. Simplicity: The 7-bit structure makes it easy to implement and understand, especially for beginners in programming.

  3. Efficiency: Since ASCII uses only one byte for each character, it is memory efficient for basic text representation.

  4. Foundation for Other Encodings: ASCII serves as the basis for more complex character encoding systems, such as UTF-8, which includes additional characters from various languages.

How to Find ASCII Value of a Character in Java

In Java, you can find the ASCII value of a character using several methods. Below are the most common techniques:

Method 1 - Using Type-Casting Method

Type-casting allows you to convert a character to its ASCII value by explicitly casting it to an integer.

public class AsciiValueTypeCasting {
    public static void main(String[] args) {
        char character = 'A';
        int asciiValue = (int) character; // Explicit conversion
        System.out.println("The ASCII value of '" + character + "' is: " + asciiValue);
    }
}

Method 1.1 - Using Type-Casting Method with User Input

This method allows the user to input a character and find its ASCII value.

import java.util.Scanner;

public class AsciiValueFinder {
    public static void main(String[] args) {
        // Create a Scanner object to read input
        Scanner scanner = new Scanner(System.in);

        // Prompt the user to enter a character
        System.out.print("Enter a character: ");
        char character = scanner.next().charAt(0); // Read the first character

        // Find the ASCII value by casting the character to an integer
        int asciiValue = (int) character;

        // Display the result
        System.out.println("The ASCII value of '" + character + "' is: " + asciiValue);

        // Close the scanner
        scanner.close();
    }
}

How the Program Works

  1. Import Scanner: The program imports the Scanner class to read user input.
  2. Create Scanner Object: It creates an instance of Scanner to capture input from the console.
  3. Prompt for Input: The user is prompted to enter a character.
  4. Read Character: The program reads the first character of the input using next().charAt(0).
  5. Calculate ASCII Value: The character is cast to an integer, which gives its ASCII value.
  6. Display Result: Finally, the program prints the ASCII value of the entered character.
  7. Close Scanner: The scanner is closed to prevent resource leaks.

How the Program Works

  1. Character Declaration: The program declares a character variable character and initializes it with the value 'D'.
  2. Explicit Conversion: The character is explicitly cast to an integer type, which retrieves its ASCII value and stores it in asciiValue.
  3. Output: The program prints the ASCII value of the character to the console.

Method 2 - Using Brute Force Method

This method involves directly assigning the character to an integer variable. Java automatically stores the ASCII value in the integer variable.

public class AsciiValueBruteForce {
    public static void main(String[] args) {
        char character = 'C';
        int asciiValue = character; // Implicit conversion
        System.out.println("The ASCII value of '" + character + "' is: " + asciiValue);
    }
}

How the Program Works

  1. Character Declaration: The program declares a character variable character and initializes it with the value 'C'.
  2. Implicit Conversion: The character is directly assigned to an integer variable asciiValue. Java implicitly converts the character to its corresponding ASCII value.
  3. Output: The program prints the ASCII value of the character to the console.

Method 3 - Using Format Specifier Method

You can also use format specifiers to print the ASCII value in a formatted manner.

public class AsciiValueFormatSpecifier {
    public static void main(String[] args) {
        char character = 'D';
        System.out.printf("The ASCII value of '%c' is: %d%n", character, (int) character);
    }
}

How the Program Works

  1. Character Declaration: The program declares a character variable character and initializes it with the value 'E'.
  2. Formatted Output: The printf method is used to format the output, where %c is replaced by the character and %d is replaced by its ASCII value (obtained through casting).
  3. Output: The formatted string is printed to the console, displaying both the character and its ASCII value.

Method 4 - Using Byte Class Method

This method is considered the most optimal way to retrieve the ASCII value by converting the character to a byte array.

public class AsciiValueByteMethod {
    public static void main(String[] args) {
        String str = "E";
        byte[] bytes = str.getBytes();
        System.out.println("The ASCII value of '" + str.charAt(0) + "' is: " + bytes[0]);
    }
}

How the Program Works

  1. String Declaration: The program declares a string variable str and initializes it with the value "F".
  2. Byte Array Conversion: The getBytes() method converts the string into a byte array, where each byte corresponds to the ASCII value of the character.
  3. Output: The program accesses the first element of the byte array (which represents the ASCII value of the first character) and prints it to the console.

Conclusion

Understanding ASCII and how to manipulate it in Java is essential for anyone interested in programming. The methods outlined above provide various ways to obtain the ASCII value of characters, each with its own advantages. By mastering these techniques, you can enhance your programming skills and improve your ability to handle text data effectively.

Example Output

The ASCII value of 'A' is: 65
Enter a character: B
The ASCII value of 'B' is: 66
The ASCII value of 'C' is: 67
The ASCII value of 'D' is: 68
The ASCII value of 'E' is: 69

Feel free to run this program in any Java development environment or online compiler to see how it works!

Happy 😄 coding

Vishnu Damwala
Vishnu Damwala

A web geek, an industry experienced web developer & tutor/instructor residing in India 🇮🇳