天天看點

java中next() 與 nextLine() 差別

next():

1、一定要讀取到有效字元後才可以結束輸入。

2、對輸入有效字元之前遇到的空白,next() 方法會自動将其去掉。

3、隻有輸入有效字元後才将其後面輸入的空白作為分隔符或者結束符。

next() 不能得到帶有空格的字元串。

nextLine():

1、以Enter為結束符,也就是說 nextLine()方法傳回的是輸入回車之前的所有字元。

2、可以獲得空白。

總結

就是說nextLine方法可以接受空格 而next方法遇到空格後面的就不接收了

執行個體

package zuochengyun;

import java.util.Scanner;

public class code04 {
    public static void main(String[] args) {
        System.out.println("請輸入幾個數并用逗号隔開:");
        Scanner sc = new Scanner(System.in);

        String str = sc.nextLine().toString();
        String[] arr  = str.split(" ");
        int[] b = new int[arr.length];
        for(int j = 0; j<b.length;j++) {
            b[j] = Integer.parseInt(arr[j]);
//            System.out.println(b[j]+" ");
            System.out.println(b[j]);
        }
    }
}      
java中next() 與 nextLine() 差別

然而用next方法,則隻能接收到第一個空格前面的字元

package zuochengyun;

import java.util.Scanner;

public class code04 {
    public static void main(String[] args) {
        System.out.println("請輸入幾個數并用逗号隔開:");
        Scanner sc = new Scanner(System.in);

        String str = sc.next().toString();
        String[] arr  = str.split(" ");
        int[] b = new int[arr.length];
        for(int j = 0; j<b.length;j++) {
            b[j] = Integer.parseInt(arr[j]);
//            System.out.println(b[j]+" ");
            System.out.println(b[j]);
        }
    }
}      

新建立一個公衆号 Rockey小何同學 想互相交流的同學可以關注一下哈! 感謝支援!