Multiple String Input In Java Using Scanner [With Coding Example]
Updated on Feb 19, 2024 | 6 min read | 30.2k views
Share:
For working professionals
For fresh graduates
More
Updated on Feb 19, 2024 | 6 min read | 30.2k views
Share:
Table of Contents
In java.util package, the scanner is one of the classes that help in collecting multiple inputs of the primitive types such as double, integer, strings, etc. Though it is not an efficient way of reading inputs in a Java program where time acts as a constraint, it is undoubtedly one of the easiest ways to collect multiple inputs from the user.
This article aims to share practical insights and methods for using the Scanner class to capture multiple inputs seamlessly. By exploring techniques such as the Java nextLine() method, as well as nextInt() and nextDouble() methods, I hope to equip you with the knowledge to implement these strategies effectively in your projects. As we dive into these methods, the goal is to provide a comprehensive guide that will improve your ability to develop dynamic Java applications through proficient input handling.
Check out our free courses to get an edge over the competition.
You must import java.util package in a program before using the Scanner class. The following table lists the methods used to take multiple inputs of different types from the user in a Java program.
Method | Inputs |
nextInt() | Integer |
nextFloat() | Float |
nextDouble() | Double |
nextLong() | Long |
nextShort() | Short |
next() | Single-word |
nextLine() | Line of Strings |
nextBoolean() | Boolean |
Check out upGrad’s Java Bootcamp
The java.util.Scanner.nextLine() method returns the line that was skipped by advancing the scanner past the current line. If a line separator is given at the end of the current line, this method excludes it and returns the string’s rest from the current line. The scanner is set at the next line beginning and reads the entire string, including the words’ white spaces.
The syntax for nextLine() method is as follows:
Public String nextLine()
This method throws the following two exceptions:
Check out upGrad’s Full Stack Development Bootcamp (JS/MERN)
Example
The following example demonstrates how java.util.Scanner.nextLine() method collects multiple inputs from the user.
import java.util.Scanner;
public class SacnnerDemoMultipleString
{
public static void main(String[] args)
{
Scanner demo = new Scanner(System.in);
System.out.print(“Please enter multiple inputs you want to print: “);
//takes an integer input
String[] string = new String [demo.nextInt()];
//consuming the <enter> from input above
demo.nextLine();
for (int i = 0; i < string.length; i++)
{
string[i] = demo.nextLine();
}
System.out.println(“\nYou have entered the following input: “);
//for-each loop to print the string
for(String str: string)
{
System.out.println(str);
// close the scanner
scanner.close();
}
}
}
The above program will print the following output
|
The java.util.Scanner.nextInt() method scans the input provided by the user as an integer. If an integer is found, then the scanner advances past the matched input.
The syntax for nextInt() method is as follows:
Public int nextInt()
This method throws the following three exceptions:
Example
The following example demonstrates how java.util.Scanner.nextInt() method collects multiple inputs from the user.
// Java program to scan integer using Scanner
// class and print their mean.
import java.util.Scanner;
public class ScannerDemoInteger
{
public static void main(String[] args)
{
Scanner demo = new Scanner(System.in);
// Initialize sum and count of input elements
int sum = 0, count = 0;
// Check if an integer value is present
while (demo.hasNextInt())
{
// Scan an integer value
int num = demo.nextInt();
sum += num;
count++;
}
int mean = sum / count;
System.out.println(“Mean: ” + mean);
}
}
The above program is fed with the following input:
|
The above program will print the following output:
|
Also Read: Java MVC Project
upGrad’s Exclusive Software and Tech Webinar for you –
SAAS Business – What is So Different?
The java.util.Scanner.nextDouble() method scans the input provided by the user as a double. If a float regular expression is found, then the scanner advances past the matched input.
The syntax for nextInt() method is as follows:
public double nextDouble()
This method throws the following three exceptions:
Example
The example demonstrates how java.util.Scanner.nextDouble() method collects multiple inputs from the user.
// Java program to scan float using Scanner
import java.util.Scanner;
public class ScannerDoubleRegularExpression {
public static void main(String[] args) {
String new = “Good Morning! 3 + 3.0 = 6 true”;
// write a new scanner object with the specified String Object
Scanner demo = new Scanner(s);
// use US locale to be able to identify doubles in the string
demo.useLocale(Locale.US);
// search the next double token and print it
while (demo.hasNext()) {
// if the next is a double, print found and the float regular expression
if (demo.hasNextDouble()) {
System.out.println(“Found :” + demo.nextDouble());
}
// if a double regular expression is not found, print “Not Found” and the token
System.out.println(“Not Found :” + demo.next());
}
// close the scanner
scanner.close();
}
}
The above program will result in the following output:
|
Not Found: true
Learn Software Development Courses online from the World’s top Universities. Earn Executive PG Programs, Advanced Certificate Programs, or Masters Programs to fast-track your career.
Mastering multiple string input in Java using a scanner is a fundamental skill for Java developers, enhancing the versatility and interactivity of Java applications. This article has demonstrated efficient methods to capture multiple inputs using the Scanner class, including the use of nextLine(), nextInt(), and nextDouble() methods. Each method serves a unique purpose, catering to different data types and ensuring that Java developers can handle user inputs with precision and ease. By integrating these techniques into Java programming, developers can build more dynamic, user-friendly applications. It is imperative for practitioners to understand these methods thoroughly to manage input in Java applications effectively. As we have seen, the Scanner class provides a straightforward and powerful toolset for dealing with multiple string inputs, showcasing the strength and flexibility of Java for handling diverse user input scenarios.
For example, the codes given in this blog are the purpose and can be modified as per an individual’s needs. If you’re interested to learn more about Java & full-stack software development, check out upGrad & IIIT-B’s Executive PG Program in Full-stack Software Development which is designed for working professionals and offers 500+ hours of rigorous training, 9+ projects, and assignments, IIIT-B Alumni status, practical hands-on capstone projects & job assistance with top firms.
Get Free Consultation
By submitting, I accept the T&C and
Privacy Policy
India’s #1 Tech University
Executive PG Certification in AI-Powered Full Stack Development
77%
seats filled
Top Resources