引数を指定してJavaを動かす方法について知りたい
これからJavaを学習しようとしている初心者にとって、そもそもどうやってJavaのプログラムを動かすの? という疑問を抱えている方もいるのではないでしょうか?
そこで、ここではターミナルやコマンドプロンプトを使って、Javaのプログラムを動かして動作を確認する方法を紹介していきます。
ファイルの作成からわかりやすく解説していきますのでぜひ参考にしてください!
なお、Javaの記事については、こちらにまとめています。
そもそもJavaとは
Javaは数あるプログラミング言語の中でも国内外問わず人気の高い言語です。「JVM(Java Virtual Machine)」という仮想マシン上で動いるため、どのような環境でも使用することができます。
Javaの用途は多岐にわたり、Web系の開発や大型のシステム開発、アプリケーション開発などさまざまな現場で利用されています。
そんなJavaの詳細については以下の記事で詳しく解説しています。
Javaを動かすための環境が構築されていない場合は、以下の記事を参考にしてください。
Javaの開発環境を構築する:Windows編
Javaの開発環境を構築する:Mac編
Javaプログラムの動かし方
ここではMacのターミナルからJavaを実行する方法を紹介します。Windowsのコマンドプロンプトでも基本操作は同じです。
Javaファイルの作成
- 作業用ディレクトリの作成
- ファイルの準備
まずはJavaのソースコードを記述したファイルを作成します。
ここではホームディレクトリに「java」というディレクトリを作成し、javaディレクトリの中にファイルを作成していきます。
ファイル名は「Main.java」とします。
そして、Main.javaに以下の内容を記述して保存します。
public class Main { public static void main(String[] args) { // Hello Javaを表示する System.out.println("Hello Java"); } }
コンパイルの実行
- Javaファイルをコンパイル
- 実行ファイルの確認
Main.javaを作成したら、Javaを実行する前にコンパイルを行います。コンパイルをすることで、Javaを実行するためのファイルが生成されます。
Javaでコンパイルするためには、以下の形式でファイル名を指定します。
javac Javaファイル名.java
Main.javaを保存したjavaディレクトリから、以下のコマンドを実行してみましょう。
javac Main.java
コンパイルが成功すれば、同じディレクトリに「Main.class」が作成されます。
この「Main.class」がJavaの実行ファイルになります。
Javaの実行
ではいよいよJavaのプログラムを実行してみましょう。
実行は以下のコマンドで行います。
java 拡張子なしのファイル名
Javaプログラム実行時はコンパイル時のようにMain.javaの拡張子「.java」は指定できませんので注意しましょう。
Javaの実行:
java Main
実行結果:
Hello Java
無事に「Hello Java」が表示されました!
Javaの実行(コマンドライン引数)
次にJavaプログラム実行時に、コマンドライン引数を指定する方法を紹介します。
コマンドライン引数を指定することで、Javaプログラム実行時にファイル名の後ろに指定した値をmainメソッドに渡すことができます。
コマンドライン引数の指定:
java ファイル名 引数1 引数2 …
先程のプログラムを見てみると、mainメソッドの引数に「 String[] args」のようにStringの配列が記述されているのがわかりますね。
このStringの配列にコマンドラインで指定した引数の値が格納されます。
では実際にコマンドライン引数を指定し、mainメソッドで値を取得してみましょう。
public class Main { public static void main(String[] args) { // 引数の値を取得する for(int i=0; i<args.length; i++){ System.out.println(args[i]); } } }
ファイルを保存したら、先程と同じくコンパイル及び実行します。
コンパイル:
javac Main.java
実行:コマンドライン引数にHelloとJavaを指定
java Main Hello Java Hello Java
このように引数で指定したHelloとJavaがmainメソッドで格納できていることがわかりますね。
mainメソッドではfor文を使って、入力されたコマンドライン引数分処理を実行しています。
実際にさまざまな引数を指定して、動作を確認してみましょう。
まとめ
ここでは、ターミナルやコマンドプロンプトを使ってJavaのプログラムを動かす方法について解説していきました。
また、コマンドライン引数を指定してJavaのプログラムの中で引数を受け取る処理についても解説しました。
ここで紹介した方法はJavaの最も基本的な処理となりますので、よく理解しておきましょう。