今回はJavaで算術演算子を使って、プログラムの中で計算する方法について書いています。
算術演算子(+,-,*,%,/)を使うことで、プログラムの中で計算することが可能です。
載せているコードについては、OpenJDKのバージョン19で動作を確認しました。
Javaの算術演算子について
算術演算子を使うことで、プログラムで計算することができます。
算術演算子としては、下記が用意されています。
算術演算子 | 説明 |
---|---|
+ | 加算(足し算)に使う |
– | 減算(引き算)に使う |
* | 乗算(掛け算)に使う |
/ | 除算(割り算)に使う |
% | 余りを求めるときに使う |
例えば、加算(足し算)をするときには、下記のように行うことができます。
int result = 10 + 30;
System.out.println(result); // 40
result
変数に対して、2つの値を算術演算子で足して、代入しています。
その次にresult
変数を出力していて、結果は「40」になります。
このように「+」を使うことで、値を加算(足し算)することができます。
他の算術演算子も同じように使うことで、計算して値を求めることが可能です。
演算子 | 例 | 内容 |
---|---|---|
+ | int result = 100 + 14; | result変数の値は114 になる |
– | int result = 90 – 15; | result変数の値は75 になる |
* | int result = 10 * 30; | result変数の値は300 になる |
/ | int result = 100 / 5; | result変数の値は20 になる |
% | int result = 100 % 20; | result変数の値は0 になる |
算術演算子の優先順位
算術演算子の優先順位は下記のようになります。
順位 | 演算子 |
---|---|
1 | *, /, % |
2 | +, – |
乗算・除算・余りが優先度が高く、加算・減算はその次になります。
そのため、下記のような計算をすると、結果は「120」です。
int result = 100 + 10 * 20 / 5 - 20;
結合順序が左からなので、左から見ていきます。
まず乗算が行われます。(優先順位が高いため)
そして、除算が行われます。
そして、加算されて、最後に減算されます。
4. 120 = 140 – 20
そのため、「120」になります。
算術演算子を使用したサンプルコード
それぞれの演算子を使って、足し算・引き算・掛け算・割り算と余りを求めます。
加算(足し算)
足し算をするだけのプログラムのクラス全体です。
mainメソッドが実行されます。
プラス記号を使うことで、足し算ができます。
class Main {
public static void main(String[] args) {
int a = 100;
int b = 130;
int total = a + b;
System.out.println(total); // 230
}
}
変数a
に100を代入して、変数b
に130を代入しています。
変数a
と変数b
を足しています。
このように変数同士や値などを算術演算子で計算することができます。
結果total
を出力すると「230」になります。
減算(引き算)
引き算をするだけのプログラムです。
マイナス記号を使うことで、引き算ができます。
class Main {
public static void main(String[] args) {
int a = 100;
int b = 230;
int total = a - b;
System.out.println(total); // -130
}
}
変数a
に100を代入して、変数b
に230を代入しています。
変数a
から変数b
を引いています。
変数b
の方が大きいので、結果total
を出力すると「-130」になります。
乗算(掛け算)
掛け算をするだけのプログラムです。
アスタリスクを使うことで、掛け算ができます。
class Main {
public static void main(String[] args) {
int a = 3;
int b = 2;
int c = 5;
int total = a * b * c;
System.out.println(total); // 30
}
}
変数a
に3を代入して、変数b
に2、変数c
に5を代入しています。
変数a
・b
・c
を掛けています。
左から掛け算されるので、結果total
を出力すると「30」になります。
除算(割り算)
割り算をするだけのプログラムです。
割り算にはスラッシュを使いました。
class Main {
public static void main(String[] args) {
int a = 10;
int b = 4;
int total = a / b;
System.out.println(total); // 2
}
}
変数a
に10を代入して、変数b
に4を代入しています。
変数a
から変数b
を割っています。
結果total
を出力すると「2」になります。
余りを求める
余りを求めるプログラムです。
パーセントを使うことで、余りを求めることができます。
class Main {
public static void main(String[] args) {
int a = 100;
int b = 3;
int total = a % b;
System.out.println(total);
}
}
変数a
に100を代入して、変数b
に3を代入しています。
変数a
から変数b
を割って、余りを求めています。
割ると「33」で余りは「1」です。
結果total
を出力すると「1」になります。
ゼロで除算すると?
例えば、下記のように0で割ろうとします。
int total = 100 / 0;
そうすると、下記のようにエラーになります。
Exception in thread "main" java.lang.ArithmeticException: / by zero
このようにjava.lang.ArithmeticException
エラーが発生して、プログラムが終了するので0除算をしないように気をつけましょう。
回避したいときには、try catchで例外処理を書いておくと良いです。
このように例外処理を書いておきます。
try {
int total = 100 / 0;
System.out.println(total);
} catch (ArithmeticException error) {
System.out.println("ゼロ除算しないでください");
}
そうすると、例外発生時にはcatchの箇所に処理が移り、強制的にエラーでプログラムが終わるのを回避できます。
Javaの算術演算子についてまとめ
今回はJavaの算術演算子を使って、計算する方法について書きました。
記事の内容をまとめると、下記のようになります。
・乗算/除算/余りが優先度が高く、加算/減算は優先度が低い。
・優先度が高い順に左から計算された。
・ゼロ除算するとエラーが発生するので気を付ける。
コメント