- ベストアンサー
intではなくStringで・・・
こんなソースがあります。。 public class Check { public static void main(String[] args) { int i = Integer.parseInt(args[0]); if (i == 123) { System.out.println("あたり!"); } else if (i < 123) { System.out.println("はずれ!"); } else { System.out.println("おおはずれ!"); } } } これを、int型の文字を入力して判定させるのではなく、String型の文字で判定させたいのですが、 int i = Integer.parseInt(args[0]);をどう変えればいけるでしょうか? よろしくお願いします!
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
argsはそもそもString[]型ですね。 でもString型で比較する訳でしたら、等しいか、等しくないかだけです。 args[0] == "123" は文字列が等しいととれば良いですが args[0] < "123" なんて比較できません。 文字列ではなく、文字ごとであればできます。 args[0].charAt(0) のように文字にすれば比較できます。 public class Check { public static void main(String[] args) { if ( args[0].equals("123") ) { System.out.println("あたり!"); } else { System.out.println("はずれ!"); } } } こんなところでいかがでしょうか? 「あたり」よりも小さい数値や大きい数値で条件分岐するのであれば、やはりint型で行うほうが賢明です。
その他の回答 (1)
- watapen
- ベストアンサー率10% (5/48)
if (args[0].compareTo("123")=0) { System.out.println("あたり!"); } else if (args[0].compareTo("123")<0) { System.out.println("はずれ!"); } else { System.out.println("おおはずれ!"); } というのはどうでしょうか?
お礼
どうもありがとうございました!
お礼
大変ありがとうございました!