Java扫描器具有示例的NextNextInt()方法

扫描仪类hasNextInt()方法

语法:

    public boolean hasNextInt();
    public boolean hasNextInt(int rad);
  • hasNextInt()方法在java.util包中可用。

  • hasNextInt()方法用于检查此扫描程序在其输入中是否具有下一个标记,可以将其作为隐式基数(rad)中的int进行操作。

  • hasNextInt(int rad)方法用于检查此扫描程序在其输入中是否具有下一个标记,可以将其作为显式或给定基数(rad)中的int进行操作。

  • 在将输入表示为int时,这些方法可能会引发异常。
    IllegalStateException:如果未打开此扫描器,则可能引发此异常。

  • 这些是非静态方法,可通过类对象访问;如果尝试使用类名称访问这些方法,则会收到错误消息。

参数:

  • 在第一种情况下,hasNextInt()

    • 它不接受任何参数。

  • 在第二种情况下,hasNextInt(int rad)

    • int rad –表示用作int的基数。

返回值:

在这两种情况下,该方法的返回类型是布尔值,则返回当该扫描仪下一个输入为一个int否则返回

示例

//Java程序是演示示例
//的hasNextInt()扫描仪的方法

import java.util.*;
import java.util.regex.*;

public class HasNextInt {
 public static void main(String[] args) {
  String str = "Java Programming! 3 * 8= 24";

  //实例化扫描仪
  Scanner sc = new Scanner(str);

  while (sc.hasNext()) {
   //通过使用hasNextInt()方法是
   //检查该对象是否下一个标记
   //表示int或不使用默认值 
   //基数
   boolean status = sc.hasNextInt();
   System.out.println("sc.hasNextInt(): " + status);

   //通过使用hasNextInt(radix)方法可以
   //检查该对象是否下一个标记
   //代表给定基数中的整数
   //是否
   status = sc.hasNextInt(2);
   System.out.println("sc.hasNextInt(2): " + status);
   sc.next();
  }
  //扫描仪关闭
  sc.close();
 }
}

输出结果

sc.hasNextInt(): false
sc.hasNextInt(2): false
sc.hasNextInt(): false
sc.hasNextInt(2): false
sc.hasNextInt(): true
sc.hasNextInt(2): false
sc.hasNextInt(): false
sc.hasNextInt(2): false
sc.hasNextInt(): false
sc.hasNextInt(2): false
sc.hasNextInt(): true
sc.hasNextInt(2): false