nextLong()
方法语法:
public long nextLong(); public long nextLong(int rad);
nextLong()方法在java.util包中可用。
nextLong()方法用于读取输入的下一个令牌,作为此Scanner的隐含基数处的长值。
nextLong(int rad)方法用于在此Scanner的显式或给定基数(rad)处读取输入的下一个标记作为长值。
在将输入表示为长值时,这些方法可能会引发异常。
InputMismatchException:当输入的下一个标记不匹配时,可能引发此异常。
NoSuchElementException:如果不存在这样的元素,则可能引发此异常。
IllegalStateException:如果未打开此扫描器,则可能引发此异常。
这些是非静态方法,只能通过类对象访问,如果尝试使用类名称访问这些方法,则会收到错误消息。
参数:
在第一种情况下,nextLong(),
它不接受任何参数。
在第二种情况下,nextLong(int rad),
int rad –表示用于操纵令牌的基数为长值。
返回值:
在这两种情况下,方法的返回类型都是long,它会检索从输入读取的long值。
范例1:
//Java程序演示示例 //的nextLong()扫描仪的方法 import java.util.*; import java.util.regex.*; public class NextLong { public static void main(String[] args) { String str = "Java Programming! 3 * 8= 24 + b"; long l = 101245l; //实例化扫描仪 Scanner sc = new Scanner(str); while (sc.hasNext()) { //通过使用nextLong()方法isto- //返回下一个标记 //长于隐式基数 if (sc.hasNextLong()) { long next_l = sc.nextLong(); System.out.println("sc.nextLong()): " + next_l); } System.out.println(sc.next()); } //扫描仪关闭 sc.close(); } }
输出结果
Java Programming! sc.nextLong()): 3 * 8= sc.nextLong()): 24 + b
范例2:
import java.util.*; import java.util.regex.*; public class NextLong { public static void main(String[] args) { String str = "Java Programming! 3 * 8= 24 + b"; long l = 101245l; //实例化扫描仪 Scanner sc = new Scanner(str); while (sc.hasNext()) { //通过使用nextLong(9)方法isto- //返回下一个标记 //长于显式基数 if (sc.hasNextLong()) { long next_l = sc.nextLong(9); System.out.println("sc.nextLong(9)): " + next_l); } System.out.println(sc.next()); } //扫描仪关闭 sc.close(); } }
输出结果
Java Programming! sc.nextLong(9)): 3 * 8= sc.nextLong(9)): 22 + b