Javaの四則演算について
Javaで数値を計算する場合(+、-、*、/)を使用して数値の計算をすることができますが、他にもBigDecimalクラスを使用して計算する方法もあります。小数点以下の数値を扱う際、意図しない丸め処理が行われない点が特徴です。
端数処理(はすうしょり)とは、与えられた数値を、ある一定の丸め幅の整数倍の数値に置き換えることである。平たく、丸め(まるめ)ともいう
引用元:端数処理 – Wikipedia
簡単な例をあげるとすると、0.25に値をセットしていたところ、0.3に丸め処理されていたりといった具合である。そして、意図しない値に丸め処理をされていた場合は、計算結果も意図しない値となって返却される
そのため意図しない丸め処理をされないようにJavaでは、、BigDecimalクラスを使用することで正確な計算を行うことができます。
| BigDecimalクラス | ||
| 変数宣言 | BigDecimal b = new BigDecimal(“10”); | |
| 加算 | add | |
| 減算 | subtract | |
| 乗算 | multiply | |
| 除算 | divide | |
| 算術演算子 | ||
| 加算 | + | |
| 減算 | – | |
| 乗算 | * | |
| 除算 | / | |
| 余り | % | |
| 代入演算子 | ||
| += | 足し算をして代入 | |
| -= | 引き算をして代入 | |
| *= | 掛け算をして代入 | |
| /= | 割り算をして代入 | |
| %= | 余りを計算して代入 | |
この記事では、JavaのBigDecimalクラス の四則演算や演算子を使用した計算方法について、記載しております。
①数値を加算する
数値を加算する方法をBigDecimalクラス、算術演算子、代入演算子でそれぞれコードを記載してみました。
BigDecimalクラスで加算を行うには、まず「import java.math.BigDecim」をインポートして、BigadDecimalの変数を宣言、加算を行う際は、「変数.add(変数))」にて加算します。
② BigadDecimalの変数を宣言 例:BigDecimal b = new BigDecimal(“1.25”);
③ 加算を行う際は、「変数.add(変数))」
サンプルコード:「KASAN1.java」
|
import java.math.BigDecimal; public class KASAN1 { public static void main(String[] args) { System.out.println(b1.add(b2)); |
実行結果
| 11.25 |
算術演算子、代入演算子を使用する方法をそれぞれ説明します。
算術演算子で計算する際は 「+」を使用します。「1 + 1」といった具合で使用できます。
また、変数を使用した形でも使用することができて、「変数 + 変数」、「変数 + 数字」としても使用することができます。
代入演算子では、「+=」で加算の計算をすることができます。「変数 += 変数または数値」で使用することができます。なお、代入演算子では左側は変数でないと使用できません。
それでは、サンプルプログラムを見ていきましょう。
サンプルコード:「KASAN2.java」
|
public class KASAN2 { public static void main(String[] args) { System.out.println(計算結果 + d2); |
実行結果
| 19.0 20.05 14.55 1.05 |
実行結果を見ていきましょう。
・1回目の出力では 変数d1(10+3.5)+5.5=19.0が出力されています。変数に数字を加算することが確認できました。
・2回目の出力では、「変数 + 変数」の計算結果が算出することを確認できます。
・3回目の出力では、変数d1を出力していますが、「d1 += d2」とすることでd1(13.5)の値にd2(1.05)を加算できることが読み取れます。
・4回目の出力では、代入演算子を使用しても、変数d2は影響を及ぼさないことが読み取れます。
算術演算子
①変数 + 変数;
②変数 + 数値;
代入演算子
変数 += 変数;
変数 += 数値;
※左側は変数のみ
②数値を減算する
数値を減算する方法をBigDecimalクラス、算術演算子、代入演算子でそれぞれコードを記載してみました。
BigDecimalクラスで加算を行うには、まず「import java.math.BigDecim」をインポートして、BigadDecimalの変数を宣言、加算を行う際は、「変数.subtract(変数))」にて減算します。
② BigadDecimalの変数を宣言 例:BigDecimal b = new BigDecimal(“1.25”);
③ 減算を行う際は、「変数.subtract(変数))」
サンプルコード:「GENSAN1.java」
import java.math.BigDecimal;
public class GENSAN1 {
public static void main(String[] args) {
BigDecimal b1 = new BigDecimal("10");
BigDecimal b2 = new BigDecimal("1.25");
System.out.println(b1.subtract(b2));
}
}
実行結果
8.75
算術演算子、代入演算子を使用する方法をそれぞれ説明します。
算術演算子で計算する際は 「-」を使用します。「2 – 1」といった具合で使用できます。
また、変数を使用した形でも使用することができて、「変数 – 変数」、「変数 – 数字」としても使用することができます。
代入演算子では、「-=」で加算の計算をすることができます。「変数 -= 変数または数値」で使用することができます。なお、代入演算子では左側は変数でないと使用できません。
それでは、サンプルプログラムを見ていきましょう。
public class GENSAN2 {
public static void main(String[] args) {
double d1 = 10 - 2.5;
double d2 = 0.5;
double 計算結果 = d1 - 5.5;
System.out.println(計算結果);
System.out.println(計算結果 - d2);
d1 -= d2;
System.out.println(d1);
System.out.println(d2);
}
}
実行結果
2.0 1.5 7.0 0.5
実行結果を見ていきましょう。
・1回目の出力では 変数d1(10-2.5)-5.5=2.0が出力されています。変数に数字を減算することが確認できました。
・2回目の出力では、「変数 – 変数」(※2.0-0.5=1.5)の計算結果が算出することを確認できます。
・3回目の出力では、変数d1を出力していますが、「d1 -= d2」とすることでd1(7.5)の値にd2(.0.5)を減算できることが読み取れます(※出力結果7.0)。
・4回目の出力では、代入演算子を使用しても、変数d2は影響を及ぼさないことが読み取れます。
算術演算子
①変数 – 変数;
②変数 – 数値;
代入演算子
変数 -= 変数;
変数 -= 数値;
※左側は変数のみ
③数値を乗算する
数値を乗算する方法をBigDecimalクラス、算術演算子、代入演算子でそれぞれコードを記載してみました。
BigDecimalクラスで加算を行うには、まず「import java.math.BigDecim」をインポートして、BigadDecimalの変数を宣言、加算を行う際は、「変数.multiply(変数))」にて減算します。
② BigadDecimalの変数を宣言 例:BigDecimal b = new BigDecimal(“1.25”);
③ 減算を行う際は、「変数.multiply(変数))」
サンプルコード:「ZYOUSAN.java」
import java.math.BigDecimal;
public class ZYOUSAN {
public static void main(String[] args) {
BigDecimal b1 = new BigDecimal("10");
BigDecimal b2 = new BigDecimal("1.5");
System.out.println(b1.multiply(b2));
}
}
実行結果
15.0
算術演算子、代入演算子を使用する方法をそれぞれ説明します。
算術演算子で計算する際は 「*」を使用します。「2 * 1」といった具合で使用できます。
また、変数を使用した形でも使用することができて、「変数 * 変数」、「変数 * 数字」としても使用することができます。
代入演算子では、「*=」で加算の計算をすることができます。「変数 *= 変数または数値」で使用することができます。なお、代入演算子では左側は変数でないと使用できません。
それでは、サンプルプログラムを見ていきましょう。
public class ZYOUZAN2 {
public static void main(String[] args) {
double d1 = 10 * 2.5;
double d2 = 0.5;
double 計算結果 = d1 * 2.0;
System.out.println(計算結果);
System.out.println(計算結果 * d2);
d1 *= d2;
System.out.println(d1);
System.out.println(d2);
}
}
実行結果
50.0 25.0 12.5 0.5
実行結果を見ていきましょう。
・1回目の出力では 変数d1(10*2.5)*2.0=50.0が出力されています。変数に数字を乗算することが確認できました。
・2回目の出力では、「変数 * 変数」(※50.0*0.5=25.0)の計算結果が算出することを確認できます。
・3回目の出力では、変数d1を出力していますが、「d1 -= d2」とすることでd1(25.0)の値にd2(.0.5)を乗算できることが読み取れます(※出力結果12.5)。
・4回目の出力では、代入演算子を使用しても、変数d2は影響を及ぼさないことが読み取れます。
算術演算子
①変数 * 変数;
②変数 * 数値;
代入演算子
変数 *= 変数;
変数 *= 数値;
※左側は変数のみ
④数値を除算する
数値を乗算する方法をBigDecimalクラス、算術演算子、代入演算子でそれぞれコードを記載してみました。
BigDecimalクラスで加算を行うには、まず「import java.math.BigDecim」をインポートして、BigadDecimalの変数を宣言、加算を行う際は、「変数.divide(変数))」にて減算します。
② BigadDecimalの変数を宣言 例:BigDecimal b = new BigDecimal(“1.25”);
③ 減算を行う際は、「変数.divide(変数))」
サンプルコード:「ZYOZAN .java」
import java.math.BigDecimal;
public class ZYOZAN {
public static void main(String[] args) {
BigDecimal b1 = new BigDecimal("30.0");
BigDecimal b2 = new BigDecimal("2.0");
System.out.println(b1.divide(b2));
}
}
実行結果
15
算術演算子、代入演算子を使用する方法をそれぞれ説明します。
算術演算子で計算する際は 「/」を使用します。「2 / 1」といった具合で使用できます。
また、変数を使用した形でも使用することができて、「変数 / 変数」、「変数 / 数字」としても使用することができます。
代入演算子では、「/=」で加算の計算をすることができます。「変数 /= 変数または数値」で使用することができます。なお、代入演算子では左側は変数でないと使用できません。
それでは、サンプルプログラムを見ていきましょう。
public class ZYOZAN2 {
public static void main(String[] args) {
double d1 = 20 / 2.5;
double d2 = 2.0;
double 計算結果 = d1 / 0.5;
System.out.println(計算結果);
System.out.println(計算結果 / d2);
d1 /= d2;
System.out.println(d1);
System.out.println(d2);
}
}
実行結果
16.0 8.0 4.0 2.0
実行結果を見ていきましょう。
・1回目の出力では 変数d1(20/2.5)/0.5=16.0が出力されています。変数に数字を乗算することが確認できました。
・2回目の出力では、「変数 / 変数」(※16.0/2.0=8.0)の計算結果が算出することを確認できます。
・3回目の出力では、変数d1を出力していますが、「d1 -= d2」とすることでd1(8.0)の値にd2(2.0)をできる除算できることが読み取れます(※出力結果4.0)。
・4回目の出力では、代入演算子を使用しても、変数d2は影響を及ぼさないことが読み取れます。
算術演算子
①変数 / 変数;
②変数 / 数値;
代入演算子
変数 /= 変数;
変数 /= 数値;
※左側は変数のみ



コメントを残す