Javaで変数を使った数値計算を行う

2017年3月17日(更新: 2017年3月19日)

前回は変数の基本的な使い方について紹介しました。

変数は処理や計算の結果を保持するためによく利用されます。

今回は、Javaにおける計算の方法と、実際に変数を使った計算プログラムの例を紹介します。

数値計算をするための演算子

以下は、Javaで計算を行う際によく使われる演算子(記号)の一覧です。

演算子 効果
+ 加算(足し算)
減算(引き算)
* 乗算(掛け算)
/ 除算(割り算)
% 剰余(あまり)

プログラム上では、乗算が × ではなく * (アスタリスク)、除算が ÷ ではなく / (スラッシュ)なので注意して下さい。

剰余とは、割った余りを求める計算です。

具体例のプログラムを見てみましょう。

public class Test {

    public static void main(String args[]) {

        // 足し算
        System.out.println(2 + 1);

        // 引き算
        System.out.println(2 - 1);

        // かけ算
        System.out.println(2 * 1);

        // 割り算
        System.out.println(6 / 2);

        // あまりを求める
        System.out.println(5 % 3);

        // 通常の計算と同じように、かけ算と割り算の方が優先順位が高い
        System.out.println(5 - 2 * 2);

        // 括弧で括ると計算の優先順位が高くなる
        System.out.println((5 - 2) * 2);
    }
}

様々な計算を行うプログラムです。実行結果は以下のようになります。

Javaの様々な計算の結果

数値や演算子を変えて実行すると、出力される答えが変わるのが確認できます。

変数を利用して計算する

数値型の変数(int型やfloat型)を使って計算を行う事ができます。

そして、計算結果を変数に代入することで、それを別の計算に利用することができます

public class Test {
 
    public static void main(String args[]) {
 
        // 変数を宣言して値を代入
        int a = 5;
        int b = 4;
 
        // 答えを格納するための変数を宣言
        int answer;
 
        // 足し算
        answer = a + b;
        System.out.println(answer);
 
        // 引き算
        answer = a - b;
        System.out.println(answer);
 
        // かけ算
        answer = a * b;
        System.out.println(answer);
 
        // 割り算
        answer = a / b;
        System.out.println(answer);
 
        // あまりを求める
        answer = a % b;
        System.out.println(answer);
 
        // かけ算、割り算の方が優先度が高い
        answer = 25 - b * a;
        System.out.println(answer);
 
        // 括弧で括ると優先度が高くなる
        answer = a * (10 - b);
        System.out.println(answer);

        // 計算結果を2倍する計算
        answer = answer * 2;
        System.out.println(answer);
    }
}

このプログラムの実行結果は次のようになります。

Javaで変数を使った計算の例

文字列の加算

String型の変数は、足し算(連結)のみ行う事ができます。

以下は2つの文字列を連結する例です。

public class Test {
 
    public static void main(String args[]) {
 
        // 文字列を直接結合
        System.out.println("文字列を" + "連結!");
 
        // String型の変数を宣言して値を代入
        String s1 = "私の名前は";
        String s2 = "毬藻です";

        // 連結した文字列を格納するための変数を宣言し、連結結果を代入
        String s3 = s1 + s2;
        System.out.println(s3);
    }
}

実行結果です。2つの文字列を加算することでひとつの文字列にできます。

2つのString型の変数に格納されていた文字列が1つの文字列として表示されていることも確認できます。

String型の変数を連結する

数値の文字列の加算

数値と文字列を結合する場合には注意が必要です。

演算子「+」の対象となる項の片方が文字列で、もう片方が数値であるとき、数値はString型に変換されます。

public class Test {
 
    public static void main(String args[]) {
 
        // 数値 + 文字列
        System.out.println(10 + "10");
 
        // 文字列 + 数値
        System.out.println("2.5" + 5.6);
    }
}

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

Javaで文字列と数値を加算した場合

結果からわかるように、数値の計算が行われていません。

String型はあくまで文字であり、 “10” や “2.5” は数値ではなく文字列として扱われ、結合が行われます。

インクリメントとデクリメント

プログラムを組んでいく中で、変数の値を 1 だけ増やしたり、減らしたりすることが必要になる場面が多々あります。

通常であれば、以下のように書きます。


int test = 0;

// 変数の数値を 1 増やす
test = test + 1;

// 変数の数値を 1 減らす
test = test - 1;

上のように式を書く代わりに、数字を増やす場合はインクリメント、減らす場合はデクリメントという書き方ができます。


int test = 0;

// インクリメント
test++;

// デクリメント
test--;

今後登場することがありますので、覚えておいてください。

Javaで変数を使った数値計算を行う」への3件のフィードバック

  1. ピンバック: 変数の応用 Javaでキーボードからの入力を受け取って計算する | JoyPlotドキュメント

  2. ピンバック: [Java] 同じ処理を繰り返すforループの書き方 | JoyPlotドキュメント

  3. ピンバック: インクリメント・デクリメントと計算式の短縮 | JoyPlotドキュメント

コメントを残す

メールアドレスが公開されることはありません。