コマンドライン引数

今まで,main メソッドの引数に String型の配列がついていました. この変数を使うと,コマンドライン引数で受け取った値をプログラムから利用できます.

つまり,ターミナル上でプログラムを実行するとき,後ろに指定した文字列をプログラムで受け取れます.

$ java HogeHoge command line arguments
    # => 上記の command, line, arguments がコマンドライン引数

例題

次のプログラムで,コマンドライン引数で与えられた値を全て出力してみましょう.

public class ArgsPrinter{
    void run(String[] args){
        // args のインデックスの0番目から最後までを繰り返して,
        // args の各要素を出力してみましょう.
        for(...) {
            // 何番目の要素として,何が配列の要素として格納されているかを確認しましょう.
            System.out.printf("%d: %s%n", ...);
        }
    }
    public static void main(String[] args){
        ArgsPrinter printer = new ArgsPrinter();
        printer.run(args);
    }
}

実行例

入力できれば,上記のプログラムを実行して実行結果を確認してください. 実行する時,コマンドライン引数をいくつか与えてみてください.

$ java ArgsPrinter
$ java ArgsPrinter abc def ghi
$ java ArgsPrinter abcdefg
$ java ArgsPrinter 0 1 2 3 4 5 6 7 8 9

このように,run メソッドが引数を受け取るようにすることもできます. 必要に応じてコマンドライン引数を run メソッドでアクセスできるようにしましょう.

課題の解答例