3C科技 娛樂遊戲 美食旅遊 時尚美妝 親子育兒 生活休閒 金融理財 健康運動 寰宇綜合

Zi 字媒體

2017-07-25T20:27:27+00:00
加入好友
在Scanner中,有next()與nextLine()兩種方法 next()是以空白或換行為區格,nextLine()則是以換行為區格讀取整行 當一起使用時,會出現遇到nextLine()無法正常運作的問題 如以下程式碼 import java.util.Scanner; public class test { public static void main(String [] argv) { Scanner cin = new Scanner(System.in); String str = cin.next();//輸入123 String str2 = cin.nextLine();//輸入321 //只顯示123 System.out.println(str + " " + str2); } } 會這樣子的原因是因為next()是抓取空白或\n換行字元以前的字串,所以next()抓完字串之後\n就被nextLine()抓住了,因此nextLine()只有抓到\n而已,沒有抓到應該抓的字串。 解決方法就是不斷讓nextLine()重複抓取,直到抓到有字串為止: import java.util.Scanner; public class test { public static void main(String [] argv) { Scanner cin = new Scanner(System.in); String str = cin.next();//輸入123 String str2; //不斷重複抓取,直到抓到字串為止 while( (str2 = cin.nextLine()).equals("") );//輸入321 //只顯示123 System.out.println(str + " " + str2); } } Categories: Java 分類 Android AngularJS API Blueprint Chrome Database MySQL DataStructure Docker Editor Vim Firefox Git GitLab Google API Hadoop HTTP Language Go Java JavaScript jQuery jQueryChart Node.js Vue Vue-CLI PHP Laravel Lumen ZendFramework Python Mac Network Cisco DLink Juniper Oauth Server Apache Share Unix FreeBSD Linux WebDesign Bootstrap CSS HTML Wordpress Search 搜尋關鍵字:

本文由blogjohnsonluorg提供 原文連結

寫了 5860316篇文章,獲得 23313次喜歡
精彩推薦