Java Scanner next() 方法



描述

Java Scanner next() 方法查找并返回此扫描器的下一个完整标记。完整标记的前后都有与分隔符模式匹配的输入。即使先前调用 hasNext() 返回 true,此方法也可能在等待输入进行扫描时阻塞。

声明

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

public String next()

参数

返回值

此方法返回下一个标记

异常

  • NoSuchElementException − 如果没有更多标记可用

  • IllegalStateException − 如果此扫描器已关闭

Java Scanner next(Pattern pattern) 方法

描述

java Scanner next(Pattern pattern) 方法返回下一个与指定模式匹配的标记。即使先前调用 hasNext(Pattern) 返回 true,此方法也可能在等待输入进行扫描时阻塞。如果匹配成功,扫描器将跳过与模式匹配的输入。

声明

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

public String next(Pattern pattern)

参数

pattern − 要扫描的模式

返回值

此方法返回下一个标记

异常

  • NoSuchElementException − 如果没有更多标记可用

  • IllegalStateException − 如果此扫描器已关闭

Java Scanner next(String pattern) 方法

描述

java Scanner next(String pattern) 方法返回下一个与从指定字符串构造的模式匹配的标记。如果匹配成功,扫描器将跳过与模式匹配的输入。

声明

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

public String next(String pattern)

参数

pattern − 指定要扫描的模式的字符串

返回值

此方法返回下一个标记

异常

  • NoSuchElementException − 如果没有更多标记可用

  • IllegalStateException − 如果此扫描器已关闭

字符串上扫描器的下一个标记示例

以下示例演示了如何使用 Java Scanner next() 方法获取下一个标记。我们使用给定字符串创建了一个扫描器对象。然后我们使用 next() 方法打印标记,再次使用 next() 方法打印标记,然后使用 close() 方法关闭扫描器。

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();
   }
}

输出

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

Hello
World!

匹配模式的字符串上扫描器的下一个标记示例

以下示例演示了如何使用 Java Scanner next(Pattern pattern) 方法获取与给定模式匹配的下一个标记。我们使用给定字符串创建了一个扫描器对象。然后我们使用 next(pattern) 方法打印标记,再次使用 next(pattern) 方法打印与给定模式匹配的标记,然后使用 close() 方法关闭扫描器。

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();
   }
}

输出

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

Hello
World!

匹配字符串作为模式的字符串上扫描器的下一个标记示例

以下示例演示了如何使用 Java Scanner next(String pattern) 方法获取与给定模式匹配的下一个标记。我们使用给定字符串创建了一个扫描器对象。然后我们使用 next(pattern) 方法打印标记,再次使用 next(pattern) 方法打印与给定模式匹配的标记,然后使用 close() 方法关闭扫描器。

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();
   }
}

输出

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

Hello
World!
java_util_scanner.htm
广告