当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Java Scanner nextLong()用法及代码示例


java.util.Scanner类的nextLong(radix)方法将输入的下一个标记扫描为long。如果翻译成功,则扫描程序将前进经过匹配的输入。如果未传递参数radix,则其行为与nextLong(radix)相似,其中假定基数为默认基数。

用法:

public long nextLong()

参数:该函数接受参数基数,该基数用于将令牌解释为long值。


返回值:此函数返回从输入中扫描的长时间。

异常:该函数引发三个异常,如下所述:

  • InputMismatchException:如果下一个标记与Integer正则表达式不匹配,或者超出范围
  • NoSuchElementException:如果输入已用尽则抛出
  • IllegalStateException:如果此扫描仪关闭,则抛出

以下示例程序旨在说明上述函数:

示例1:

// Java program to illustrate the 
// nextLong() 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 9 + 6 = 12.0"; 
  
        // create a new scanner 
        // with the specified String Object 
        Scanner scanner = new Scanner(s); 
  
        while (scanner.hasNext()) { 
  
            // if the next is a Long, 
            // print found and the Long 
            if (scanner.hasNextLong()) { 
                System.out.println("Found Long value :"
                                   + scanner.nextLong()); 
            } 
  
            // if no Long is found, 
            // print "Not Found:" and the token 
            else { 
                System.out.println("Not found Long value :"
                                   + scanner.next()); 
            } 
        } 
        scanner.close(); 
    } 
}
输出:
Not found Long value :Gfg
Found Long value :9
Not found Long value :+
Found Long value :6
Not found Long value :=
Not found Long value :12.0

示例2:

// Java program to illustrate the 
// nextLong() 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 9 + 6 = 12.0"; 
  
        // create a new scanner 
        // with the specified String Object 
        Scanner scanner = new Scanner(s); 
  
        while (scanner.hasNext()) { 
  
            // if the next is a Long, 
            // print found and the Long 
            if (scanner.hasNextLong()) { 
                System.out.println("Found Long value :"
                                   + scanner.nextLong(12)); 
            } 
  
            // if no Long is found, 
            // print "Not Found:" and the token 
            else { 
                System.out.println("Not found Long value :"
                                   + scanner.next()); 
            } 
        } 
        scanner.close(); 
    } 
}
输出:
Not found Long value :Gfg
Found Long value :9
Not found Long value :+
Found Long value :6
Not found Long value :=
Not found Long value :12.0

示例3:演示InputMismatchException

// Java program to illustrate the 
// nextLong() method of Scanner class in Java 
// InputMismatchException 
  
import java.util.*; 
  
public class GFG1 { 
    public static void main(String[] argv) 
        throws Exception 
    { 
  
        try { 
  
            String s = "Gfg 9 + 6 = 12.0"; 
  
            // create a new scanner 
            // with the specified String Object 
            Scanner scanner = new Scanner(s); 
  
            while (scanner.hasNext()) { 
  
                // if the next is a Long, 
                // print found and the Long 
                // since the value 60 is out of range 
                // it throws an exception 
  
                System.out.println("Next Long value :"
                                   + scanner.nextLong()); 
            } 
            scanner.close(); 
        } 
        catch (Exception e) { 
            System.out.println("Exception thrown: " + e); 
        } 
    } 
}
输出:
Exception thrown: java.util.InputMismatchException

示例4:演示NoSuchElementException

// Java program to illustrate the 
// nextLong() method of Scanner class in Java 
// NoSuchElementException 
  
import java.util.*; 
  
public class GFG1 { 
    public static void main(String[] argv) 
        throws Exception 
    { 
  
        try { 
  
            String s = "Gfg"; 
  
            // create a new scanner 
            // with the specified String Object 
            Scanner scanner = new Scanner(s); 
  
            // Trying to get the next Long value 
            // more times than the scanner 
            // Hence it will throw exception 
            for (int i = 0; i < 5; i++) { 
  
                // if the next is a Long, 
                // print found and the Long 
                if (scanner.hasNextLong()) { 
                    System.out.println("Found Long value :"
                                       + scanner.nextLong()); 
                } 
  
                // if no Long is found, 
                // print "Not Found:" and the token 
                else { 
                    System.out.println("Not found Long value :"
                                       + scanner.next()); 
                } 
            } 
            scanner.close(); 
        } 
        catch (Exception e) { 
            System.out.println("Exception thrown: " + e); 
        } 
    } 
}
输出:
Not found Long value :Gfg
Exception thrown: java.util.NoSuchElementException

示例5:演示IllegalStateException

// Java program to illustrate the 
// nextLong() method of Scanner class in Java 
// IllegalStateException 
  
import java.util.*; 
  
public class GFG1 { 
    public static void main(String[] argv) 
        throws Exception 
    { 
  
        try { 
  
            String s = "Gfg 9 + 6 = 12.0"; 
  
            // create a new scanner 
            // with the specified String Object 
            Scanner scanner = new Scanner(s); 
  
            // close the scanner 
            scanner.close(); 
            System.out.println("Scanner Closed"); 
  
            System.out.println("Trying to get "
                               + "next Long value"); 
  
            while (scanner.hasNext()) { 
  
                // if the next is a Long, 
                // print found and the Long 
                if (scanner.hasNextLong()) { 
                    System.out.println("Found Long value :"
                                       + scanner.nextLong()); 
                } 
  
                // if no Long is found, 
                // print "Not Found:" and the token 
                else { 
                    System.out.println("Not found Long value :"
                                       + scanner.next()); 
                } 
            } 
        } 
        catch (Exception e) { 
            System.out.println("Exception thrown: " + e); 
        } 
    } 
}
输出:
Scanner Closed
Trying to get next Long value
Exception thrown: java.lang.IllegalStateException: Scanner closed

参考: https://docs.oracle.com/javase/7/docs/api/java/util/Scanner.html#nextLong(int)



相关用法


注:本文由纯净天空筛选整理自gopaldave大神的英文原创作品 Scanner nextLong() method in Java with Examples。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。