1. 程式人生 > 其它 >java學習筆記——java方法02.命令列傳參與可變引數

java學習筆記——java方法02.命令列傳參與可變引數

有時候你希望執行一個程式時候再傳遞給它訊息。這要靠傳遞命令列引數給main()函式實現。 命令列引數是在執行程式時候緊跟在程式名字後面的資訊。

命令列傳參與可變引數

一、命令列傳參

有時候你希望執行一個程式時候再傳遞給它訊息。這要靠傳遞命令列引數給main()函式實現。

命令列引數是在執行程式時候緊跟在程式名字後面的資訊。

1. 下面的程式列印所有的命令列引數

public class Demo {
    public static void main(String args[]){
        for(int i=0; i<args.length; i++){
            System.out.println("args[" + i + "]: " + args[i]);
        }
    }
}

2. 進入cmd,編譯、執行java檔案

第一次執行沒有給引數,沒有輸出;

第二次執行在程式名後面緊跟引數,正確輸出。

疑問:什麼時候需要用到?和Scanner互動有什麼區別?

二、可變引數

不確定要傳遞多少個引數,在定義方法的時候可以使用可變引數

public class Demo {
    public static void main(String args[]){
        printmax(8,2,52,4,5);
        printmax(120,43,65);
    }
    //可變引數的宣告格式:型別... 變數名
    public static void printmax(int... a) {
        if (a.length == 0){
            System.out.println("no number");
            return;
        }
        double result = 0.0;
        for (int i = 0; i < a.length; i++){
            if (a[i] > result){
                result = a[i];
            }
        }
        System.out.println("最大值是:" + result);
    }
}

注意:一個方法中只能指定一個可變引數,它必須是方法的最後一個引數。任何普通的引數必須在它之前宣告。