Udemy logo

Scanner Class in JavaKnowing your way around a computer is an invaluable skill these days. While almost everyone can use a laptop or personal desktop computer, knowing anything more complicated about how a computer really works requires some knowledge of programming and computer science. Though it can be complicated, learning how the varied aspects of computer languages, such as Java, is important to understanding your technology. One important aspect of Java is the concept of the scanner class.

What is Java?

Java is one of several, indeed thousands, of languages in the field of computer programming. Java is one of the more popular computer languages, required for a lot of your computer’s functions, and its logo is easily recognizable for many people. Java’s purpose, like that of all artificial languages, is to communicate instructions to a machine, most often a computer. There are nine total versions of Java, and taking an introduction to Java programming is a good place to start to learn more about it in detail. The first was released in 1996, and the most recent in 2014. The Java language is used to write computer programs.

A computer program is a detailed list of instructions sent to a computer, to influence the way the computer behaves. It is written in computer language, and the written instructions are called computer code. Any task that your computer performs, from the most simple to the most complex, is the result of the computer obeying prompts from a computer program, in the form of code. The simplest of programs allows the user to print a phrase, such as “Hello World!” The hello world class is often taught in introductory computer science classes. It looks like this:

public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello, World");

Your favorite video game, on the other hand, is the result of incredibly complex programs, working with each other and your own input to give you the experience of the game. Included in computer programs are classes, or blueprints of programs designed to create a specific new outcome. One of Java’s most useful classes to be familiar with is the scanner class.

What is the Scanner Class?

Java’s scanner class is designed to handle input from the computer’s user, making it a useful tool in many computer programs. You would include the scanner class in your code for any computer program that requires input from the person using the program. To go back to the video game example, a video game user will often be prompted to enter specific information into the program, such as a name, age, or location. To best understand the scanner class, think of it as a tool by which a new object is created, with the help of input from the computer’s user.

Using the Scanner Class

To use the scanner class when you’re writing code, you must start by telling Java that you’d like to do so. This is accomplished by inputting the following code: import java.util.Scanner;. This tells the program that you want to use the scanner class, located in a particular library of Java classes, called the java.util library. As you can see, Java consists of numerous classes that can be used when writing code, and they are organized into libraries within the Java program. Below this line of code, you’ll write: public class StringVariables. This allows you to incorporate variables into the code, which will be identified by the user’s input into the program.

To create a new object from the class, you’ll write:

Scanner user_input=new Scanner( system. In);

In typing this, you are naming the variable “user input.” You are also telling the program that the new object you’re creating will be based on system input, which means information that the computer’s user is providing.

A common piece of input required by a program from the user is the user’s name. The code to prompt the user for this input is:

String first_name;

first_name = user_input.next();

The ‘next’ portion of the code tells the program that the variable “first name” will be defined as the next thing the user types into the computer.

To ask the user for this information, you will add a text prompt, using the code:

System.out.print(“Enter your first name:”);

This piece of code should be placed before the line that equates the first name to the next piece of user input.

Your Java code in its entirety, to ask the user to provide his or her first name, should now look like this:

import java.util.Scanner;

public class StringVariables {

public static void main (String[] args) {

Scanner user_input = new Scanner (System.in) ;

String first_name;

System.out.print (“Enter your first name:”);

first_name = user_input.next ();


The “public static void main” line of code lets the computer know that the method is public, and can be accessed by other classes, and that it has no return type (void). In other words, the program is only asking the user for information, rather than using that information and returning a solution to the user.

This program could be made more complex by adding lines of code that asked for a middle name or a last name, or in a number of other ways. Asking the computer’s user for input like this seems so simple when it occurs in real time, but the amount of code required to make the computer behave that way is surprising. As you can see, computer programming can quickly become incredibly complex and time consuming. It is difficult to imagine how many lines of code are required to run certain kinds of software, or to create the complicated types of video games that are popular today. Every computer program, including Java, has a method by which the program can prompt the user to input certain information. Think about how often you need to enter your email address or full name when using a number of programs, and you’ll begin to understand the importance of computer science.

Comprehending code and computer programming languages like Java requires a lot of practice, but the practice will pay off when you’ve developed an understanding of how artificial languages can control a computer’s behavior.

Page Last Updated: March 2014

Java students also learn

Empower your team. Lead the industry.

Get a subscription to a library of online courses and digital learning tools for your organization with Udemy Business.

Request a demo