引数を指定してmainメソッドを呼び出す

広告

Java のプログラムを実行すると最初に main メソッドが呼び出されます。このとき引数を指定してプログラムを実行することで main メソッドに値を渡すことができます。ここでは Java のプログラムを実行するときに引数を指定して main メソッドを呼び出す方法を解説します。

引数を指定してmainメソッドを呼び出す

Java のプログラムが実行されると最初に呼び出されるメソッドが main メソッドです。 main メソッドの定義を改めて書くと次のようになっています。

class クラス名{
  public static void main(String args[]){
    /* ... */
  }
}

main メソッドにも String クラスの配列の引数が 1 つ設定されています。 main メソッドは特別なメソッドでプログラムを実行した時に一度だけ自動的に呼び出されますが、プログラムを実行するときに値を指定することで main メソッドに値を渡すことができます。プログラムを実行するときに値を指定する方法は次の通りです。

java クラスファイル名 値1 値2 ...

値を指定してプログラムを実行する場合は「java クラスファイル名」の後に半角スペースを一つ入れたあとに main メソッドに渡したい値を記述します。複数の値を記述する場合は半角スペースで区切り続けて記述して下さい。このようにプログラムの実行時に指定する値をコマンドライン引数と呼びます。

指定された値は main メソッドが呼ばれる時に String クラスの配列として渡されます。例えば 2 つの値を指定してプログラムを実行した場合は、次のように指定した値を取得できます。

public static void main(String args[]){
  System.out.println(args[0]);
  System.out.println(args[1]);
}

mainメソッドの引数をうまく利用することで、プログラム実行時に指定した値を処理するようなプログラムを作成することができます。

なお、引数のデータ型はStringクラスのオブジェクトですので、指定された値は全て文字列として扱われます。数値を指定した場合でも数値からなる文字列として扱われますので注意して下さい。

サンプルコード

それでは簡単なサンプルプログラムを作って試してみます。テキストエディタで次のように記述したあと、 Sample.java という名前で保存します。

class Sample{
  public static void main(String args[]){
    System.out.println("「" + args[0] + "」");
  }
}

コンパイルを行います。

javac -encoding UTF-8 Sample.java

その後で、次のように実行してください。

java Sample Hey

引数を指定してmainメソッドを呼び出す(1)

プログラムを実行するときに指定した引数が、 main メソッドに渡されていることが確認できました。

-- --

Java のプログラムを実行するときに引数を指定して main メソッドを呼び出す方法を解説しました。

( Written by Tatsuo Ikura )

プロフィール画像

著者 / TATSUO IKURA

これから IT 関連の知識を学ばれる方を対象に、色々な言語でのプログラミング方法や関連する技術、開発環境構築などに関する解説サイトを運営しています。