Java Basic Input and Output

In this tutorial, you will learn basic approaches to show output to users and take input from users in Java.

Java Output

In Java, you can simply use

System.out.println(); or

System.out.print(); or

System.out.printf();

to send output to standard output (screen).

Here,

System is a class
out is a public static field: it accepts output data.
Don’t worry if you don’t understand it. We will discuss class, public, and static in later chapters.

Let’s take an example to output a line.

class AssignmentOperator {
    public static void main(String[] args) {
    	
        System.out.println("Java programming is interesting.");   
    }
}

Output

Java programming is interesting.

Here, we have used the println() strategy to show the string.


Difference between println(), print() and printf()

print() – It prints string inside the quotes.
println() – It prints string inside the quotes similar like print() method. Then the cursor moves to the beginning of the next line.
printf() – Tt provides string formatting


Example: print() and println()

class Output {
    public static void main(String[] args) {
    	
        System.out.println("1. println ");
        System.out.println("2. println ");
    	
        System.out.print("1. print ");
        System.out.print("2. print");
    }
}

Output

1. println 
2. println 
1. print 2. print

In the above example, we have demonstrated the working of the print() and printf() strategies. To find out about the printf() strategy, visit Java printf().


Example: Printing Variables and Literals

class Variables {
    public static void main(String[] args) {
    	
        Double number = -10.6;
    	
        System.out.println(5);
        System.out.println(number);
    }
}

When you run the program, the output will be:

5
-10.6

Here, you can see that we have not used the quotes. It is on the grounds that to show integers, variables, etc, we don’t use marks.


Example: Print Concatenated Strings

class PrintVariables {
    public static void main(String[] args) {
    	
        Double number = -10.6;
    	
        System.out.println("I am " + "awesome.");
        System.out.println("Number = " + number);
    }
}

Output

I am awesome.
Number = -10.6

In the above example, notice the line,

System.out.println("I am " + "awesome.");

Here, we have used the + operator to concatenate (join) the two strings: “I am ” and “awesome.”.

And also, the line,

System.out.println("Number = " + number);

Here, first the value of variable number is evaluated. Then, the value is concatenated to the string: “Number = “.


Java Input

Java gives various approaches to get input from the user. In any case, in this tutorial, you will learn to get input from the user using the object of Scanner class.

So as to use the object of Scanner, we have to import java.util.Scanner package.


import java.util.Scanner;

Then, we need to create an object of the Scanner class. We can use the object to take input from the user.


// create an object of Scanner
Scanner input = new Scanner(System.in);

// take input from the user
int number = input.nextInt();

Example: Get Integer Input From the User

import java.util.Scanner;

class Input {
    public static void main(String[] args) {
    	
        Scanner input = new Scanner(System.in);
    	
        System.out.print("Enter an integer: ");
        int number = input.nextInt();
        System.out.println("You entered " + number);

        // closing the scanner object
        input.close();
    }
}

Output

Enter an integer: 23
You entered 23

In the above example, we have created an object named input of the Scanner class. We then call the nextInt() method of the Scanner class to get an integer input from the user.

Similarly, we can use nextLong(), nextFloat(), nextDouble(), and next() methods to get long, float, double, and string input respectively from the user.

Note: We have used the close() strategy to close the object. It is prescribed to close the scanner object once the input is taken.


Example: Get float, double and String Input

import java.util.Scanner;

class Input {
    public static void main(String[] args) {
    	
        Scanner input = new Scanner(System.in);
    	
        // Getting float input
        System.out.print("Enter float: ");
        float myFloat = input.nextFloat();
        System.out.println("Float entered = " + myFloat);
    	
        // Getting double input
        System.out.print("Enter double: ");
        double myDouble = input.nextDouble();
        System.out.println("Double entered = " + myDouble);
    	
        // Getting String input
        System.out.print("Enter text: ");
        String myString = input.next();
        System.out.println("Text entered = " + myString);
    }
}

Output

Enter float: 2.343
Float entered = 2.343
Enter double: -23.4
Double entered = -23.4
Enter text: Hey!
Text entered = Hey!

As mentioned, there are other several ways to get input from the user. To learn more about Scanner, visit Java Scanner.


Thanks for reading! We hope you found this tutorial helpful and we would love to hear your feedback in the Comments section below. And show us what you’ve learned by sharing your photos and creative projects with us.