Javaでのコマンドライン引数[例を使用]
公開: 2021-03-03Javaプログラムを作成しているときに、main()メソッドの(String [] args)に気付いたはずです。 これらは、mainメソッドに渡される文字列に格納されているコマンドライン引数です。 これらの引数は、コマンドライン引数と呼ばれます。
アプリケーションがすべての実行で同じことを実行することを望まないため、コマンドライン引数を使用することは非常に一般的です。 何らかの方法でその動作を構成する場合は、コマンドライン引数を使用する必要があります。
目次
コマンドライン引数の使用とは何ですか?
これらのコマンドライン引数は、コンソールから渡されます。 それらは、入力として使用するためにJavaプログラムで受け取ることができます。 配列に格納されているので、必要な数の引数を渡すことができます。 コマンドライン引数の使用方法の例を次に示します。
プログラムで
クラステスト
{{
public static void main(String [] args)
{{
for(int i = 0; i <args.length; ++ i)
{{
System.out.println(args [i]);
}
}
}
コンソールで
java args1args2args3…
その結果、入力として渡したこれらの引数を含む出力が得られます。 このプログラムは、これらすべての引数を改行で区切って出力します。
args1
args2
args3
ご覧のとおり、コマンドライン引数は文字列型のみにすることができます。 引数として数値を渡したい場合はどうなりますか? 渡した引数に何かを追加したいとします。 上記のプログラムでそれを行うと、次のようになります。
プログラムで
クラステスト
{{
public static void main(String [] args)
{{
for(int i = 0; i <args.length; ++ i)
{{
System.out.println(args [i] +1);
}
}
}
コンソールで
javaテスト111213
出力
111
121
131
数字の「文字列」に文字が追加されていることがわかります。 それらに数値を追加するには、引数を整数形式に変換する必要があります。 これを行うには、IntegerクラスのparseInt()メソッドを使用します。 実装は次のようになります–
プログラムで
クラステスト{
public static void main(String [] args){
for(int i = 0; i <args.length; ++ i){
int arg = Integer.parseInt(args [i]);
System.out.println(arg + 1);
}
}
}
コンソールで
javaテスト111213
出力
12
13
14
ご覧のとおり、希望する結果が得られる方法をご覧ください。 parseDouble()とparseFloat()を使用してdouble()とfloat()でも同じことができます。
提供された引数を特定の数値タイプに変換できない場合があります。その結果、NumberFormatExceptionと呼ばれる例外が発生します。
これで、これらの引数をアプリケーションに渡していると思うかもしれません。 アプリケーションのパフォーマンスに何らかの影響を及ぼしますか? その答えはノーです。 引数を渡しても、アプリケーションの速度が低下したり、その他のパフォーマンスが低下したりすることはありません。 たとえそうだとしても、それは非常に最小限であり、目立たないはずです。
読む: Javaプロジェクトのアイデアとトピック
Javaの可変引数
JDK 5では、Javaに、可変数の引数を必要とするメソッドの作成を簡素化する新機能が含まれていました。 この機能はvarargsと呼ばれ、可変長引数を意味します。 可変引数を取るメソッドはvarargsメソッドと呼ばれます。
この機能がJavaに実装される前は、アプリケーションで変数引数を渡す方法は2つありました。 それらの1つはオーバーロードされたメソッドを使用し、もう1つは配列で引数を渡し、次にその配列をメソッドに渡すことを含みました。 これらの方法はどちらもエラーが発生しやすいものでした。 Varargsは、以前のメソッドに伴うすべての問題を解決し、クリーンで操作するコードが少ないという利点を追加しました。
variable-length-argumentsは、3つのピリオド(…)で指定されます。以下は、同じ–の完全な構文です。
public static void varMethod(int…x)
{{
//メソッドの本体
}
上記の構文は、varMethod()を0個以上の引数で呼び出すことができることをコンパイラーに通知します。
Varargsもオーバーロードできます。
varargsを使用するためのいくつかのルールがあります。
- メソッドには変数引数を1つだけ含めることができます。
- 可変引数は最後の引数でなければなりません。
Varargsメソッドで2つの引数を使用するとエラーが発生する
void method(String…str、int…a)
{{
// 2つのvarargがあるため、コンパイル時エラー
}
最後の引数ではなく最初の引数としてVarargsを指定するとエラーが発生する
void method(int…a、String str)
{{
//varargが表示されたときにコンパイル時エラー
//通常の引数の前
}
したがって、変数引数を渡したい場合は、varargsメソッドを使用できます。
世界のトップ大学からオンラインでソフトウェアコースを学びましょう。 エグゼクティブPGプログラム、高度な証明書プログラム、または修士プログラムを取得して、キャリアを早急に進めましょう。
スキルアップ、アップグレード、アップデート
Javaは確かに例外的な言語であり、大規模なアプリケーションを開発するためにさまざまな多国籍企業や企業によって使用されています。
そのようなスキルの範囲は本当にあなたのキャリアをアップスケールすることができます。 upGradは、機械学習、Java、C ++、C、AI、自然言語処理などの多くの言語でのコーディングの優れたコースを提供してきました。 未来の言語であるJavaにアップグレードして、キャリアを明るくしましょう。
Java、フルスタックソフトウェア開発について詳しく知りたい場合は、upGrad&IIIT-Bのフルスタックソフトウェア開発のエグゼクティブPGプログラムをチェックしてください。これは、働く専門家向けに設計されており、500時間以上の厳格なトレーニングを9時間以上提供しています。プロジェクト、割り当て、IIIT-B卒業生のステータス、実践的な実践的なキャップストーンプロジェクト、トップ企業との仕事の支援。
コマンドラインを使用してJavaクラスを実行するにはどうすればよいですか?
コマンドラインを使用して、つまりシェルプロンプトからJavaクラスを実行するには、コマンドjava -jar jar_file.jarを入力します。ここで、jar_file.jarはJARファイルの名前です(例:QuoraAnswerManager.jar)。 コマンドラインでJavaクラスを実行する最も簡単な方法は、Javaクラスをコンパイルして、クラスパスを提供することです。 次のコマンドを使用してJavaクラスをコンパイルします:javac -classpathclasspathMainFoldermyClass.java。 次に、次のコマンドを使用してコンパイル済みクラスを実行します。java -classpathclasspathMainFoldermyClass。
Javaのjarファイルとは何ですか?
Javaには多くの種類のjarファイルがあります。 Jarファイルは単なるパッケージです。 JARファイル形式は元々Java用に作成されており、ソフトウェアの配布を目的としていました。 JARファイルは、配布を容易にするために複数のファイルとディレクトリを1つのファイル内に格納するという点で、ZIPファイルと同様に機能するため、JARアーカイブと呼ばれることもあります。 JARファイルはJavaアーカイブと呼ばれることもあります。 これは技術的には正しくありませんが、アーカイブという単語とパッケージ化の両方がJARファイルを参照するために使用されることがあるJavaコミュニティでよく使用されます。