Java的Scanner类的next与nextLine用法区别
生活随笔
收集整理的這篇文章主要介紹了
Java的Scanner类的next与nextLine用法区别
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
next(); 從控制臺獲取字符串,如果字符串中包含空格,只會獲取第一個作為接收的字符串。比如:輸入hello I am a chinese!,接收到的只是hello。
nextLine();從控制臺獲取字符串,字符串中可以包含空格,以回車符作為接收結束標志。比如:輸入hello I am a chinese!,接收到的是hello I am a chinese!。
如何讓next();方法也可以向類似nextLine()一樣接收包括空格的字符串呢?
Scanner類中有hasNext()方法,注意,這個方法是一個阻塞方法,表示每次從控制臺讀取一個字符串。為了保證能夠結束輸入,可以指定一個結束輸入的字符串,比如"quit"表示輸入結束。實現代碼如下:
String s;
while(!sc.hasNext("quit"))
{
? ?s = sc.next();
? ?System.out.println(s);
}
這樣,next();就有了和nextLine()類似的功能,同時輸入"quit"字符串保證輸入狀態結束。
轉載于:https://blog.51cto.com/simoniu/1587828
總結
以上是生活随笔為你收集整理的Java的Scanner类的next与nextLine用法区别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: oKit项目管理软件试用及感受
- 下一篇: java美元兑换,(Java实现) 美元