Java.util.Scanner.hasNext()

Python/Java学习交流群:369606713


描述

所述java.util.Scanner.hasNext(Pattern pattern) 的方法,如果下一个完整标记与指定模式匹配返回true。一个完整的标记是前缀,后缀是与分隔符模式匹配的输入。此方法可能在等待输入时阻塞。扫描仪不会超过任何输入。

声明

以下是java.util.Scanner.hasNext()方法的声明

public boolean hasNext(Pattern pattern)

参数

pattern - 要扫描的模式

返回值

当且仅当此扫描程序具有与指定模式匹配的另一个标记时,此方法才返回true

异常

IllegalStateException - 如果此扫描程序已关闭

实例

以下示例显示了java.util.Scanner.hasNext()方法的用法。

package com.tutorialspoint;

import java.util.*;
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 the scanner's next token matches "rld" following 2 chars
      System.out.println("" + scanner.hasNext(Pattern.compile("..rld")));

      // check if the scanner's next token matches "llo" following 2 chars
      System.out.println("" + scanner.hasNext(Pattern.compile("..llo")));

      // print the rest of the string
      System.out.println("" + scanner.nextLine());

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

让我们编译并运行上面的程序,这将产生以下结果

false
true
Hello World! 3 + 3.0 = 6