Java Scanner next() Method



Description

The Java Scanner next() method finds and returns the next complete token from this scanner. A complete token is preceded and followed by input that matches the delimiter pattern. This method may block while waiting for input to scan, even if a previous invocation of hasNext() returned true.

Declaration

Following is the declaration for java.util.Scanner.next() method

public String next()

Parameters

NA

Return Value

This method returns the next token

Exception

  • NoSuchElementException − if no more tokens are available

  • IllegalStateException − if this scanner is closed

Java Scanner next(Pattern pattern) Method

Description

The java Scanner next(Pattern pattern) method Returns the next token if it matches the specified pattern. This method may block while waiting for input to scan, even if a previous invocation of hasNext(Pattern) returned true. If the match is successful, the scanner advances past the input that matched the pattern.

Declaration

Following is the declaration for java.util.Scanner.next() method

public String next(Pattern pattern)

Parameters

pattern − the pattern to scan for

Return Value

This method returns the next token

Exception

  • NoSuchElementException − if no more tokens are available

  • IllegalStateException − if this scanner is closed

Java Scanner next(String pattern) Method

Description

The java Scanner next(String pattern) method returns the next token if it matches the pattern constructed from the specified string. If the match is successful, the scanner advances past the input that matched the pattern.

Declaration

Following is the declaration for java.util.Scanner.next() method

public String next(String pattern)

Parameters

pattern − a string specifying the pattern to scan

Return Value

This method returns the next token

Exception

  • NoSuchElementException − if no more tokens are available

  • IllegalStateException − if this scanner is closed

Getting Next Token of a Scanner on a String Example

The following example shows the usage of Java Scanner next() method to get the next token. We've created a scanner object using a given string. Then we printed the token using next() method and again we've printed the token using next() method and then scanner is closed using close() method.

package com.tutorialspoint;

import java.util.Scanner;

public class ScannerDemo {
   public static void main(String[] args) {

      String s = "Hello World! 3 + 3.0 = 6 ";

      // create a new scanner with the specified String Object
      Scanner scanner = new Scanner(s);

      // find the next token and print it
      System.out.println(scanner.next());

      // find the next token and print it
      System.out.println(scanner.next());

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

Output

Let us compile and run the above program, this will produce the following result −

Hello
World!

Getting Next Token of a Scanner Matching a Pattern on a String Example

The following example shows the usage of Java Scanner next(Pattern pattern) method to get the next token which matches a given pattern. We've created a scanner object using a given string. Then we printed the token using next(pattern) method and again we've printed the token using next(pattern) method to print the tokens which matches the given patterns and then scanner is closed using close() method.

package com.tutorialspoint;

import java.util.Scanner;
import java.util.regex.Pattern;

public class ScannerDemo {
   public static void main(String[] args) {

      String s = "Hello World! 3 + 3.0 = 6 ";

      // create a new scanner with the specified String Object
      Scanner scanner = new Scanner(s);

      // check if next token matches the pattern and print it
      System.out.println(scanner.next(Pattern.compile("..llo")));

      // check if next token matches the pattern and print it
      System.out.println(scanner.next(Pattern.compile("..rld!")));

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

Output

Let us compile and run the above program, this will produce the following result −

Hello
World!

Getting Next Token of a Scanner Matching a String as Pattern on a String Example

The following example shows the usage of Java Scanner next(String pattern) method to get the next token which matches a given pattern. We've created a scanner object using a given string. Then we printed the token using next(pattern) method and again we've printed the token using next(pattern) method to print the tokens which matches the given patterns and then scanner is closed using close() method.

package com.tutorialspoint;

import java.util.Scanner;

public class ScannerDemo {
   public static void main(String[] args) {

      String s = "Hello World! 3 + 3.0 = 6 ";

      // create a new scanner with the specified String Object
      Scanner scanner = new Scanner(s);

      // check if next token matches the pattern and print it
      System.out.println(scanner.next("Hello"));

      // check if next token matches the pattern and print it
      System.out.println(scanner.next("World!"));

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

Output

Let us compile and run the above program, this will produce the following result −

Hello
World!
java_util_scanner.htm
Advertisements