首頁 >Java >Java基礎 >怎麼讓Java取得使用者輸入的字串

怎麼讓Java取得使用者輸入的字串

王林
王林原創
2019-12-06 14:54:107189瀏覽

怎麼讓Java取得使用者輸入的字串

從控制台動態輸入數據,對數據進行各種各樣的處理,然後將數據輸出是很常見的操作。現在對資料的輸入方式進行系統的介紹:

Scanner類別的呼叫

#相關方法:

#hasNext()判斷掃描器中目前掃描位置後是否還存在下一段。

hasNextLine()如果在此掃描器的輸入中存在另一行,則傳回 true。

next()尋找並傳回來自此掃描器的下一個完整標記。

nextLine()此掃描器執行目前行,並傳回跳過的輸入資訊。

nextInt()將控制台掃描的整形資料傳回。

相關影片教學分享:java學習影片

程式碼範例:

package FIRST_Chapter;
import java.util.Scanner;
public class TestScanner { 
        public static void main(String[] args) { 
                Scanner s = new Scanner(System.in); 
                System.out.println("请输入字符串:"); 
                while (true) { 
                        String line = s.nextLine(); 
                        if (line.equals("ok")) break; 
                        System.out.println(">>>" + line); 
                } 
        } 
}

結果示範:

怎麼讓Java取得使用者輸入的字串

next()和nextLine()方法的差異

#next()方法一定要讀取到有效字元後才可以結束輸入,對輸入有效字符先前遇到的空白鍵、Tab鍵或Enter鍵等結束符,next()方法會自動將其去掉,只有在輸入有效字元之後,next()方法才會將其後輸入的空白鍵、Tab鍵或Enter鍵等視為分隔符號或結束符。

簡單地說,next()尋找並傳回來自此掃描器的下一個完整標記。完整標記的前後是與分隔模式相符的輸入訊息,所以next方法不能得到帶有空格的字串。

而nextLine()方法的結束符只是Enter鍵,也就是nextLine()方法傳回的是Enter鍵之前的所有字符,它是可以得到有空格的字串的。

例如如下程式:

package FIRST_Chapter;

import java.util.Scanner;

class test{
    public static void main(String[] Args){

        Scanner sc= new Scanner(System.in);
        System.out.println("请输入一段数据");
        String str =sc.next();
        System.out.println("用next输入的语句"+str);
        String str1 =sc.nextLine();
        System.out.println("用nextLine输入的语句"+str1);
        //sc.nextLine();//如果下面注释行想用nextLine的话,就要注意加上这句话

    }
}

輸出結果:

怎麼讓Java取得使用者輸入的字串

#換個結果輸出:

怎麼讓Java取得使用者輸入的字串

總結:next碰到空格,換行都結束輸入。而nextLine只以換行(回車)才會結束輸入。

從第二個結果看出,當你輸入回車表示輸入結束時,這個時候下一行的程式碼nextLine也結束了輸入。而輸入的結果是空的,就是個回車而已。

相關文章教學推薦:java入門教學

#

以上是怎麼讓Java取得使用者輸入的字串的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn