Java Scanner hasNextShort()方法及示例
java.util.Scanner 类的 hasNextShort() 方法,如果该扫描器输入的下一个标记可以被认为是一个给定弧度的短值,则返回true。扫描器不会超过任何输入。如果没有将小数点作为参数传入,该函数将小数点解释为默认小数点,并发挥相应的作用。
语法
public boolean hasNextShort(int radix) orpublic boolean hasNextShort()
参数: 该函数接受一个非强制性的单一参数 radix 。它指定了用于将令牌解释为短值的弧度。
返回值: 如果且仅当该扫描器的下一个令牌是默认弧度的有效短值时,该函数返回 真 。
异常 :如果该扫描器被关闭,该函数会抛出IllegalStateException。下面的程序说明了上述函数:
程序1 :
// Java program to illustrate the// hasNextShort() method of Scanner class in Java// with parameter import java.util.*; public class GFG1 { public static void main(String[] argv) throws Exception { String s = "gfg 2 geeks!"; // new scanner with the // specified String Object Scanner scanner = new Scanner(s); // use US locale to interpret shorts in a string scanner.useLocale(Locale.US); // iterate till end while (scanner.hasNext()) { // check if the scanner's // next token is a short with a radix 3 System.out.print("" + scanner.hasNextShort(3)); // print what is scanned System.out.print(" -> " + scanner.next() + "\n"); } // close the scanner scanner.close(); }}
输出
false -> gfgtrue -> 2false -> geeks!
程序2
// Java program to illustrate the// hasNextShort() method of Scanner class in Java// without parameter import java.util.*; public class GFG1 { public static void main(String[] argv) throws Exception { String s = "gfg 2 geeks!"; // new scanner with the // specified String Object Scanner scanner = new Scanner(s); // use US locale to interpret shorts in a string scanner.useLocale(Locale.US); // iterate till end while (scanner.hasNext()) { // check if the scanner's // next token is a short with the default radix System.out.print("" + scanner.hasNextShort()); // print what is scanned System.out.print(" -> " + scanner.next() + "\n"); } // close the scanner scanner.close(); }}输出
false -> gfgtrue -> 2false -> geeks!
程序3: 演示IllegalStateException的程序
// Java program to illustrate the// hasNextShort() method of Scanner class in Java// Exception case import java.util.*; public class GFG1 { public static void main(String[] argv) throws Exception { try { String s = "gfg 2 geeks!"; // new scanner with the // specified String Object Scanner scanner = new Scanner(s); // use US locale to interpret shorts in a string scanner.useLocale(Locale.US); scanner.close(); // iterate till end while (scanner.hasNext()) { // check if the scanner's // next token is a short with the default radix System.out.print("" + scanner.hasNextShort()); // print what is scanned System.out.print(" -> " + scanner.next() + "\n"); } // close the scanner scanner.close(); } catch (IllegalStateException e) { System.out.println("Exception: " + e); } }}输出
Exception: java.lang.IllegalStateException: Scanner closed
**参考资料: ** https://docs.oracle.com/javase/7/docs/api/java/util/Scanner.html#hasNextShort()
