Java

【Java】コマンドライン引数とは?

ウハブログ

こんにちは、大学時代にプログラミングを始め、現在はエンジニアをしているuhablog(ウハブログ)です。

今回の記事ではJavaのコマンドライン引数について徹底的に解説していきます。
実際のプログラムを書いて説明しているので、初心者の方でもわかりやすい内容となっています。

この記事を読むことで

  • コマンドライン引数ってなに?
  • コマンドでJavaを実行するときにコマンドライン引数を渡す方法
  • eclipseでコマンドライン引数を渡す方法

を理解することができます!ぜひ最後まで読んでいってください!

挫折せずにプログラミングを学ぶために必要なこと

僕はプログラミングで挫折した経験があります。

それは周りに聞ける人がいなく、一人でエラーと戦っていたからです。

Freeksは月額10,780円という破格の値段で、現役エンジニアに質問する環境を手に入れることができるプログラミングスクールです。

次のような悩みを少しでも抱えていたら、まずは無料カウンセリングを受けてみてください。

  • エラーを一人で解消できない
  • このまま勉強を続けて本当に就職できるかわからない
  • プログラミングスクールは高額すぎて通えない
  • 申込みは1分でできます。学習する環境にお金を使うというのは良い自己投資になります。
    >>Freeksの無料カウンセリングはこちら

    Javaのコマンドライン引数とは

    まずはJavaのコマンドライン引数がなんなのか?ということについて解説していきます。
    Javaのコマンドライン引数とはmainメソッドに渡す引数のことです。
    Javaのmainメソッドは次のように記述されます。

    public static void main(String[] args)

    このmainメソッドの引数である「String[] args」に渡すものがコマンドライン引数です。

    Javaでプログラムを実行するとmainメソッドが実行されます。
    このプログラムを実行したときにmainメソッドに渡す引数がコマンドライン引数です。

    コマンドライン引数はString型の配列として渡されます。

    Javaのコマンドライン引数の渡し方

    次にJavaのコマンドライン引数の渡し方について解説していきます。
    Javaは次のようなコマンドで実行することができます。

     java クラス名

    コマンドライン引数を渡したい場合はクラス名の後に半角スペースを入れて、指定することで渡すことができます。

    java クラス名 コマンドライン引数

    実際のコードで確認

    実際にプログラムを書いてコマンドライン引数を渡してmainメソッドを実行してみましょう。
    次のプログラムはコマンドライン引数を1つ受け取ってその値を出力する処理を記述したものです。

    public class KomandoLineHikisu{
        public static void main(String[] args) {
            System.out.println("コマンドライン引数を1つ受け取って、出力する");
            System.out.println("コマンドライン引数 = " + args[0]);
        }
    }

    上記のプログラムに「Test」というコマンドライン引数を渡して実行します。

    javac KomandoLineHikisu.java
    java KomandoLineHikisu Test

    実行結果は次のようになります。

    コマンドライン引数を1つ受け取って、出力する
    コマンドライン引数 = Test

    コマンドライン引数を複数設定する

    先ほどの例ではコマンドライン引数を1つ渡しました。
    しかしコマンドライン引数は配列を受け取るので、複数指定することができます。

    複数指定する場合には次のように半角スペースを入れることで複数指定することができます。

    java クラス名 引数1 引数2 引数3 ...

    上記のように渡すことで引数を複数渡すことができ、指定した順に配列の0番目、1番目に格納されてmainメソッドに渡されます。

    実際のコードで確認してみましょう。
    次のコードはコマンドライン引数を複数受け取り、拡張for文を使って順番に出力しています。

    public class KomandoLineHikisu{
        public static void main(String[] args) {
            System.out.println("コマンドライン引数を複数受け取って、出力する");
    
            // 拡張for文を使ってコマンドライン引数を出力する
            for (String arg: args) {
                System.out.println(arg);
            }
        }
    }

    上記のプログラムに複数コマンドライン引数を渡して実行してみると次のような結果になります。

    java KomandoLineHikisu Test テスト 試験

    実行結果

    コマンドライン引数を複数受け取って、出力する
    Test
    テスト
    試験

    eclipseでコマンドライン引数を設定する

    ここまでコマンドを使ってJavaを実行する際にコマンドライン引数を渡す方法に付いて解説してきました。
    ここからはeclipseを使って開発している際にコマンドライン引数を設定する方法について解説していきます。

    次のようなmainメソッドを準備しました。
    このmainメソッドではコマンドライン引数として受け取った値で挨拶をするプログラムです。

    public class KomandoLineHikisu {
    
        public static void main(String[] args) {
    
            // コマンドライン引数で名前を受け取って自己紹介するプログラム
            System.out.println("こんにちは!私の名前は" + args[0] + "です。");
    
        }
    }

    eclipseでコマンドライン引数を指定する場合は、まずコマンドライン引数を渡したいクラスを右クリックします。
    次に「実行」の上にカーソルを合わせ、表示された「実行の構成」をクリックします。

    するとウィンドウが立ち上がります。
    「引数」のタグをクリックし、「プログラムの引数」の箇所にコマンドライン引数として渡したい値を入力します。
    「適応」を押して、実行すると指定したコマンドライン引数が渡されて実行されます。

    まとめ

    今回はJavaのコマンドライン引数について解説してきました。
    Javaではmainメソッドを実行する際に引数を渡すことができます。

    コマンドライン引数を渡す方法として、コマンドから渡す方法・eclipseを使って渡す方法について解説してきました!

    この記事があなたのプログラミング学習に役立ってくれれば幸いです。

    挫折せずにプログラミングを学ぶためには?

    僕はプログラミングで挫折した経験があります。

    エラーの連続やエラーが解消しても思った通りに動かないといったことが原因で、プログラミングが嫌いでした。

    「プログラミングって全然意味わからないし、全然楽しくない」そう思っていました。

    原因は当時周りに聞ける人が誰もいなかったからです。

    プログラミング学習をしていく上で周りに聞ける環境というのはとても大切です。

    周りに聞ける人なんていない

    そんな人におすすめなのが月額10,780円で現役エンジニアに質問できる、プログラミングスクールのFreeksです。

    多くのプログラミングスクールが数十万円払って通うところを月額10,780円から通うことができるのはコスパが良いです。

    しかもサブスク制で、自分のペースで学ぶことができ嫌になったらすぐにやめることができます。

    「周りに誰も聞ける人がいなくて、エラーが解決できない」「プログラミング全然楽しくない」という方は、無料カウンセリングを受けてみて下さい。

    Freeks公式サイトはこちら>>>

    【関連記事】Freeks評判、口コミ

    -Java
    -, , ,