Skip to main content

Java Exception Handling MCQ Test

  Loading…

Reading Values from Keyboard in Java

 

Reading Values from Keyboard in Java

In Java, we can take user input from the keyboard using different methods. The most common ways are:

  1. Using Scanner Class (Recommended)
  2. Using BufferedReader
  3. Using Console Class

1. Using Scanner Class (Most Common & Easy)

The Scanner class is the easiest way to read input from the keyboard. It is part of the java.util package.

Example: Read Integer, Float, and String Input

import java.util.Scanner; // Import Scanner class public class ScannerExample { public static void main(String[] args) { Scanner sc = new Scanner(System.in); // Create Scanner object System.out.print("Enter your name: "); String name = sc.nextLine(); // Read String input System.out.print("Enter your age: "); int age = sc.nextInt(); // Read integer input System.out.print("Enter your salary: "); float salary = sc.nextFloat(); // Read float input System.out.println("Name: " + name); System.out.println("Age: " + age); System.out.println("Salary: " + salary); sc.close(); // Close Scanner to prevent memory leak } }

🔹 How It Works?

  • sc.nextLine() → Reads a full line (String).
  • sc.nextInt() → Reads an integer.
  • sc.nextFloat() → Reads a float value.
  • sc.close() → Closes the scanner.

2. Using BufferedReader (Faster, But Complex)

The BufferedReader class reads input efficiently using an input stream. It requires IOException handling.

Example: Read Input using BufferedReader

import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class BufferedReaderExample { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); System.out.print("Enter your name: "); String name = br.readLine(); // Reads string input System.out.print("Enter your age: "); int age = Integer.parseInt(br.readLine()); // Reads integer input System.out.println("Hello " + name + ", your age is " + age); } }

🔹 Why Use BufferedReader?

  • Faster than Scanner for large input.
  • Requires IOException handling.
  • Integer.parseInt() is needed to convert String to int.

3. Using Console Class (For Secure Input like Passwords)

The Console class is used for reading input securely (like passwords), but it doesn't work in some IDEs (like Eclipse).

Example: Read Input using Console

public class ConsoleExample { public static void main(String[] args) { java.io.Console console = System.console(); if (console == null) { System.out.println("No console available!"); return; } String name = console.readLine("Enter your name: "); char[] password = console.readPassword("Enter your password: "); System.out.println("Welcome, " + name); } }

🔹 Why Use Console?

  • readPassword() hides the password while typing.
  • Works in the command line but may not work in IDEs.

Summary: Best Method for Different Cases

MethodBest ForWorks in IDE?Handles Large Input?
ScannerSimple user input (int, float, string)✅ Yes❌ No
BufferedReaderFaster input processing✅ Yes✅ Yes
ConsoleSecure input (passwords)❌ No (In most IDEs)✅ Yes


Comments

Popular posts from this blog

Passing and Returning Objects in Java Methods

Passing and Returning Objects in Java Methods In Java, objects can be passed as parameters to methods and returned from methods just like other primitive data types. This allows for flexibility and the manipulation of object state within methods. Let's explore how passing and returning objects work in Java. Passing Objects as Parameters When you pass an object as a parameter to a method, you are essentially passing a reference to that object. This means that changes made to the object inside the method will affect the original object outside the method.  Example: class Car {     String model;     Car(String model) {         this.model = model;     } } public class CarProcessor {     // Method to modify the Car object     static void modifyCar(Car car, String newModel) {         car.model = newModel;     }     public static void main(String[] args) {       ...

Chained Exceptions

 Chained exceptions, also known as nested exceptions, allow you to associate one exception with another. This feature is useful when you want to provide more context or information about the cause of an exception. In Java, you can chain exceptions using constructors that take a `Throwable` (or its subclasses) as an argument. Syntax: try {     // Code that may throw an exception } catch (ExceptionType1 e1) {     throw new ExceptionType2("Additional information", e1); } Explanation: - Inside a `catch` block, you can create a new exception object and pass the original exception (`e1`) as the cause. - The chained exception (`ExceptionType2`) includes a message and the original exception (`e1`) as its cause. - This technique allows you to preserve the original exception's stack trace and context while providing additional information about the higher-level exception. - Chained exceptions can be caught and processed at higher levels of the call stack, allowing for bet...