logo

Java Scanner hasNext() Method

The hasNext() je metoda třídy Java Scanner, která vrací true, pokud má tento skener na vstupu jiný token. Existují tři různé typy Java Scanneru hasNext() metodu, kterou lze diferencovat v závislosti na jejím parametru. Tyto jsou:

  1. Java Scanner hasNext () Method
  2. Java Scanner hasNext (vzor řetězce) metoda
  3. Java Scanner hasNext (vzor vzoru) metoda

1.Java Scanner hasNext () Metoda:

Je to metoda třídy Scanner, která vrací hodnotu true, pokud má tento skener na vstupu jiný token. Tato metoda se může zablokovat při čekání na skenování vstupu.

2. Metoda Java Scanner hasNext (vzor řetězce):

Je to metoda třídy Scanner, která vrací hodnotu true, pokud další token odpovídá vzoru vytvořenému ze zadaného řetězce.

3.Java Scanner hasNext (vzor vzoru) Metoda:

Je to metoda třídy Scanner, která vrací hodnotu true, pokud další úplný token odpovídá zadanému vzoru.

Syntax

Následují prohlášení hasNext() metoda:

 public boolean hasNext() public boolean hasNext(String pattern) public boolean hasNext(Pattern pattern) 

Parametr

Datový typ Parametr Popis Povinné/Volitelné
Tětiva vzor Je to řetězec určující vzor ke skenování. Požadované
Vzor vzor Je to vzor pro vyhledání zadaného řetězce. Požadované

Návraty

Metoda Návraty
hasNext() Tato metoda vrátí hodnotu true tehdy a pouze tehdy, má-li tento skener jiný token.
hasNext (vzor řetězce) Tato metoda vrátí hodnotu true tehdy a pouze tehdy, pokud má tento skener jiný token odpovídající zadanému vzoru.
hasNext (vzor vzoru) Tato metoda vrátí hodnotu true tehdy a pouze tehdy, pokud má tento skener jiný token odpovídající zadanému vzoru.

Výjimky

IllegalStateException - Tato metoda vyvolá výjimku, pokud je vyvolání provedeno po zavření skeneru.

Verze kompatibility

Java 1.5 a vyšší

Příklad 1

 import java.util.*; public class ScannerHasNextExample1 { public static void main(String args[]){ //Create Scanner object Scanner scan = new Scanner('Hello World!'); //Printing the delimiter used System.out.println('Delimiter:' + scan.delimiter()); //Print the Strings while (scan.hasNext()) { System.out.println(scan.next()); } //Close the scanner scan.close(); } } 

Výstup:

 Delimiter:p{javaWhitespace}+ Hello World! 

Příklad 2

 import java.util.*; public class ScannerHasNextExample2 { public static void main(String args[]){ String s = 'Hello, This is JavaTpoint.'; //Create scanner Object and pass string in it Scanner scan = new Scanner(s); //Check if the scanner has a token System.out.println('Result: ' + scan.hasNext()); //Print the string System.out.println('String: ' +scan.nextLine()); //Check if the scanner has a token after printing the line System.out.println('Final Result: ' + scan.hasNext()); //Close the scanner scan.close(); } } 

Výstup:

 Result: true String: Hello, This is JavaTpoint. Final Result: false 

Příklad 3

 import java.util.*; public class ScannerHasNextExample3 { public static void main(String args[]){ //Create Scanner object Scanner scan = new Scanner('Program:Java;Python;Android'); //Initialize the String pattern String pattern = 'Program:.*'; //Check if pattern satisfies the String content if(scan.hasNext(pattern)){ System.out.println('Pattern found'); } else{ System.out.println('Pattern not found'); } scan.close(); } } 

Výstup:

 Pattern found 

Příklad 4

 import java.util.*; public class ScannerHasNextExample4 { public static void main(String args[]){ String str = 'JavaTpoint.com 15 + 15 = 18.0'; Scanner scanner = new Scanner(str); //Checking scanner's next token matches 'c' System.out.println('Result: '+scanner.hasNext('JavaTpoint.com')); //Checking scanner's next token matches '=' System.out.println('Result: '+scanner.hasNext('=')); //Print the rest of the string System.out.println('Rest of String: '+scanner.nextLine()); scanner.close(); } } 

Výstup:

 Result: true Result: false Rest of String: JavaTpoint.com 15 + 15 = 18.0 

Příklad 5

 import java.util.*; import java.util.regex.Pattern; public class ScannerHasNextExample5 { public static void main(String args[]){ //Create Scanner object Scanner scan = new Scanner('Names:Raju1;Pawan;Suresh'); //Declare the delimiter scan.useDelimiter(';'); /*Initialize the String pattern which signifies that the String token contains characters of the alphabet only*/ Pattern pattern = Pattern.compile('[A-Za-z]*'); while(scan.hasNext()){ //Check if the token consists of declared pattern if(scan.hasNext(pattern)){ System.out.println(scan.next()); } else scan.next(); } scan.close(); } } 

Výstup:

 Pawan Suresh