Java Scanner类之hasNextInt与他的好兄弟

  • Post author:
  • Post category:java




public boolean hasNextInt()

  • 当且仅当此扫描程序的下一个标记是有效的int值时才返回true;
Scanner scanner = new Scanner(System.in);
while(scanner.hasNextInt()){
    int n=scanner.nextInt();
    System.out.println(n);
}



public boolean hasNextInt(int radix)

  • 当且仅当此扫描程序的下一个标记是有效的int值时才返回true;
  • radix用于限制最多执行次数
Scanner scanner = new Scanner(System.in);
while(scanner.hasNextInt(3)){
    int n=scanner.nextInt();
    System.out.println(n);
}



注意事项

  • scanner.hasNextInt() 为true时,其输入值会顺流至下一个scanner输入语句

例1下一个输入语句是nextInt():

while(scanner.hasNextInt()){
            System.out.println("输入n");
            int n=scanner.nextInt();
            System.out.println("输出n");
            System.out.println(n);
        }

执行结果

在这里插入图片描述

例2下一个输入语句不是nextInt():

while(scanner.hasNextInt()){
            System.out.println("输入n");
            String n=scanner.nextLine();
            System.out.println("输出n");
            System.out.println(n);
        }

执行结果

在这里插入图片描述

  • List item



hasNextByte, hasNextDouble, hasNextFloat, hasNextLong, hasNextShort,hasNext, hasNextLine

  • 用法与hasNextInt基本相同,不做叙述



hasNextBoolean

  • 只有public boolean hasNextBoolean()方法,用法和hasNextInt相同



版权声明:本文为qq_48493161原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。