今回は、ウエブブラウザだけでプログラミング言語の勉強ができるpaiza.ioの話です。このpaiza.ioでは作ったプログラムに標準入力からのデータを与えるための入力ボックスがありますが、コマンドライン引数を与えるための入力ボックスがありません。そこで、今回は、このpaiza.ioで作るプログラムにコマンドライン引数を与える方法を解説します。
方法その1:コマンドライン引数を無理やり指定する
paiza.ioを起動
![](https://i.imgur.com/qTL7xTe.png)
まずは、paiza.ioを起動しましょう。ブラウザで「https://paiza.io/ja」にアクセスするだけで完了です。画面が表示されたら、画面上部のメニューから「新規コード」を選択します。
![](https://i.imgur.com/osE81Wu.png)
プログラムを作成する
![](https://i.imgur.com/DVCrYZp.png)
まずは、javaなどを選択してプログラムを作成し、コマンドライン引数を得なくても動作するところまでデバッグ&動作確認まで行います。プログラムができあがったら、コピー&ペーストでメモ帳などにそのプログラムを写しておきましょう。
bashに切り替える
![](https://i.imgur.com/WIZyXC4.png)
bashを選んだら、「Main.sh」というファイルが自動的に作られます。その横の「+」ボタンをクリックして、先程作ったプログラム(今回はjava)のファイル名を入力し、編集エリアにプログラムをコピペで貼り付けます。このときは、java言語を選択したときのようにプログラムのハイライト表示やインテリ入力はできないので、予めプログラムの開発モードで動作確認をしておいたほうが良いです。
![](https://i.imgur.com/ywwsSjh.png)
bashでコンパイル&実行する
![](https://i.imgur.com/hB2BgA9.png)
bashスクリプト編集画面「Main.sh」のほうには、javac でプログラムをコンパイルし、javaでコンパイルしたプログラムを実行します。ですので、ここでコマンドライン引数を指定してあげれば、プログラムにコマンドラインの引数を渡すことができるわけです。
ちなみに、これはbashなので、「ls – al」などを実行することもできますので、コンパイル後の出力ファイル名を確認する場合などに使えます。
実行結果
![](https://i.imgur.com/il6xcDb.jpg)
擬似的にコマンドライン引数を指定する
無理にコマンドライン引数を使わなくても、メイン関数を1段下げて、本来のメイン関数内でコマンドライン引数にあたるString型の配列を作っておいて、コマンドライン引数を使いたい擬似的なメイン関数(下の例ではmymain関数)に渡してやるシンプルな方法もあります。
![](https://i.imgur.com/Sdii6ED.png)