Table of Contents
前回は変数の基本的な使い方について紹介しました。
変数は処理や計算の結果を保持するためによく利用されます。
今回は、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); } }
様々な計算を行うプログラムです。実行結果は以下のようになります。
数値や演算子を変えて実行すると、出力される答えが変わるのが確認できます。
変数を利用して計算する
数値型の変数(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); } }
このプログラムの実行結果は次のようになります。
文字列の加算
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型に変換されます。
public class Test { public static void main(String args[]) { // 数値 + 文字列 System.out.println(10 + "10"); // 文字列 + 数値 System.out.println("2.5" + 5.6); } }
実行結果は以下のようになります。
結果からわかるように、数値の計算が行われていません。
String型はあくまで文字であり、 “10” や “2.5” は数値ではなく文字列として扱われ、結合が行われます。
インクリメントとデクリメント
プログラムを組んでいく中で、変数の値を 1 だけ増やしたり、減らしたりすることが必要になる場面が多々あります。
通常であれば、以下のように書きます。
int test = 0; // 変数の数値を 1 増やす test = test + 1; // 変数の数値を 1 減らす test = test - 1;
上のように式を書く代わりに、数字を増やす場合はインクリメント、減らす場合はデクリメントという書き方ができます。
int test = 0; // インクリメント test++; // デクリメント test--;
今後登場することがありますので、覚えておいてください。
ピンバック: 変数の応用 Javaでキーボードからの入力を受け取って計算する | JoyPlotドキュメント
ピンバック: [Java] 同じ処理を繰り返すforループの書き方 | JoyPlotドキュメント
ピンバック: インクリメント・デクリメントと計算式の短縮 | JoyPlotドキュメント