Scanner类的.next()和.hashNext()方法详解编程语言

 使用Scanner类可以很方便地便获取用户的键盘输入,Scanner是一个基于正则表达式的文本扫描器,它可以从文件、输入流 、字符串中解析出基本类型值和字符串值。Scanner类提供了多个构造器,不同的构造器可接受文件、输入流、字符串作为数据,用于从文件、输入流、字符串中解析数据。

        Scanner主要提供了两个方法来扫描输入:

(1)   hasNextXxx():是否还有下一个输入项,其中Xxx可以是Int、Long等代表基本数据类型的字符串。如果需要判断是否包含下一个字符串,可以省略Xxx.

(2)   nextXxx():获取下一个输入项。Xxx的含义与前一个方法中Xxx相同。

        在默认情况下,Scanner使用空白(包括空格、Tab空白、回车)作为多个输入项之间的分隔符。看下面的程序使用Scanner来获得用户的键盘输入。

public class TestScannerKeyBoard { 
  public static void main(String[] args) { 
    //System.in代表标准输入,就是键盘输入 
    Scanner sc=new Scanner(System.in); 
 
    //Scanner使用useDelimiter(String pattern)方法设置分隔符。下面设置使用回车作为分隔符, 
    //程序每次读取一行,不管这一行是否包含空格,Scanner都把它当成一个输入项 
    //sc.useDelimiter("/n"); 
    //判断是否还有下一个输入项 
    while(sc.hasNext()) { 
      //输出输入项 
      System.out.println("键盘输入内容是:"+sc.next()); 
    } 
  } 
}
    运行上面程序,程序通过Scanner不断从键盘读取键盘输入,每次读到键盘输入,直接将输入内容打印在控制台。
事实上,Scanner提供了两个简单的方法来逐行读取:
   (1) boolean hasNextLine():返回输入源中是否还有下一行。
   (2)String nextLine():返回输入源中的下一行的字符串。
    Scanner不仅可以获取字符串输入项,也可以获取任何类型的输入项。

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/13469.html

(0)
上一篇 2021年7月19日
下一篇 2021年7月19日

相关推荐

发表回复

登录后才能评论