入力された値の読み取り

広告

では簡単な電卓を作っていきます。プログラムの実行時に指定した計算式をプログラム側で計算して結果を表示するようにしましょう。

プログラムの実行時に指定する引数は3つにします。数字、演算子、数字の3つです。例えば「java dentaku 4 * 10」のような感じにしてみましょう。まずは引数の処理だけを行うプログラムを作成します。

dentaku1.java

class dentaku1{
  public static void main(String args[]){
    int val1 = 0;  /* 最初の数字 */
    int val2 = 0;  /* 次の数字 */
    String ope;    /* 演算子 */

    if (args.length != 3){
      System.out.println("Usage : java dentaku 数値 演算子 数値");
      System.out.println("演算子は kake waru tasu hiku の4つです");
      System.exit(0);  /* プログラムを終了する */
    }

    val1 = Integer.parseInt(args[0]);
    val2 = Integer.parseInt(args[2]);
    ope = args[1];

    System.out.println("入力された式は " + val1 + " " + ope + " " + val2 + " です");
  }
}

上記では実行時に入力された値を取り出し、画面に表示しているだけです。数字に該当する1番目と3番目の引数の値は、数値型の値に変換して変数に格納しています。

今まで出てこなかった「System.exit(0)」という文があると思います。この文を実行するとプログラムがそこで強制的に終了となります。上記ではプログラムの実行時に引数が3個で無かった場合は、使い方を画面に表示した上で強制終了しています。

演算子の部分には"* / + -"の4つを使いたかったのですが、コマンドプロンプト上で"*"は特別な意味を持っているので、"kake"、"waru"、"tasu"、"hiku"の4つにしました。

実行結果は下記のようになります。

p1

取り合えず入力された値だけは取り出しましたので、次は演算子が正しいかどうかをチェックします。

( Written by Tatsuo Ikura )

関連記事 (一部広告含む)