- ベストアンサー
JAVAのコマンドラインについて
コマンドラインで-sを入れた時に String uwagaki = "-s" if (uwagaki.equals(args[0])) とこうしてコマンドラインで入れたのは-sなのかifで確認しています。 しかし、コマンドラインを入力しないとエラーが起こってしまいます。 どのように対処したらいいでしょうか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
String s; if (args.length > 0) { s = args[0]; } else { s = ""; } if (uwagaki.equals(s)) { ... } とすれば、OK。
その他の回答 (1)
- yamada_g
- ベストアンサー率68% (258/374)
回答No.1
コマンドライン引数が何もない場合、argsは長さが0の配列になっているので、 >if (uwagaki.equals(args[0])){ とするとインデックス0の要素にアクセスできないためArrayIndexOutOfBoundsExceptionが発生してしまいます。 ですので、 if (args.length > 0 && "auau".equals(args[0])) { というふうにargsの長さチェックを先に行えばいいと思います。
質問者
お礼
そういうやりかたもあるんですね!とても参考になりました
お礼
おかげさまでエラーがでなくなりました!ありがとうございます