java Scanner中的hasNext()方法


由於忘了這類的小知識點,特來補充!

轉自:java Scanner中的hasNext()方法 - Deltadeblog - 博客園 (cnblogs.com)

hasNext()方法判斷輸入(文件、字符串、鍵盤等輸入流)是否還有下一個輸入項,若有,返回true,反之false。

Scanner sc = new Scanner(new File("text.txt"));

System.out.println(sc.hasNext());

若test.txt為空(空格、tab、回車),則輸出結果為false;若該文件不為空輸出true。

當輸入為鍵盤時,該方法出現阻塞(block),也即等待鍵盤輸入。輸入源沒有結束,又讀不到更多輸入項。

Scanner sc = new Scanner(System.in);
 
System.out.println(sc.hasNext());

運行上面的程序,控制台等待鍵盤輸入,輸入信息后輸出結果為true。

輸入:Hello
true

由上面的知識,不難理解

Scanner sc = new Scanner(System.in);
while(sc.hasNext()) {
    System.out.println("Input from keyboard:" + sc.next());
}

sc.hasNext()始終等待鍵盤輸入,輸入信息后,sc.next()打印出該信息。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM