• 締切済み

argsってなんなのでしょう?

public static void main (String[] args) と用いられていたりするこのargsとは、 結局どういうもので、 どういうふうに使えばいいのかなど、 よくわかりません。 配列であるらしいのですが・・・ 入力ストリーム関連で教えていただけないでしょうか?

みんなの回答

  • yutopapa
  • ベストアンサー率47% (139/295)
回答No.3

クラスを実行する時、 C:\>java hoge てな感じで実行しますが、この時、 C:\>java hoge x y z という様に実行時引数を付けた場合に、 args[0] に "x" args[1] に "y" args[2] に "z" と入ります。 用途は様々ですが・・・。

marukorotama
質問者

お礼

ありがとうございました。 非常に具体的でわかりやすかったです。

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

Argumentsの頭3文字と複数を予想してsがついてます。 意味は、「引数」(ひきすう)で、コンピュタ用語では、 モジュールプログラムに渡す、変数値やポインタの示すアドレスなどです。 その引数が存在するということ(無い場合は()や記述省略の言語あり)、いくつあるかと言うことと、第1番目から何番目かと言うこと、データのタイプなどと共に値が渡されてくる。複数あるを予定するので、何番目で区別する言語のものは、配列に納められることが多い。 コマンドプロンプトで起動するものは、コマンドプロンプトでコマンドの後に、スペース(や言語によりカンマ)で区切って入力される。すると前から要素 1.2,3・・の配列に納められる。 当モジュールでは、それをモジュール名の後に記述して 処理の中で使うべきときは使い、前のモジュールと連携を取る。

marukorotama
質問者

お礼

ありがとうございました。 どういうことを示す引き数なのかとういうことが 詳しく書かれていて、参考になりました。

  • 12m24
  • ベストアンサー率23% (193/817)
回答No.1

 Javaは詳しくはやっていないのですが、この「args」はプログラムを開始するときの引数になります。  たとえば、DOS窓で「program.exe -f a to b」のように、入力された文字を文字列の配列としてmain関数が受け取ることになっています。  C言語での話なので、まったく同じとはいえませんが、main(const char *argc[],int argn)というのがC言語でのmain関数で、argc[0]にアクセスすると最初の引数の文字列が、arg[1]にアクセスすると次の引数の文字列が……というように、引数を取り出すことができます。

marukorotama
質問者

お礼

ありがとうございました。 mainと関連付けての説明が、理解しやすかったです。

関連するQ&A