「Java」BigDecimalの使い方(加算、減算、乗算、除算)

2020年11月4日

説明
1.public BigDecimal add(BigDecimal augend)
値が(this+augend)でスケールがmax(this.scale(), augend.scale())であるBigDecimalを返します。
2.public BigDecimal subtract(BigDecimal subtrahend)
値が(this – subtrahend)でスケールがmax(this.scale(), subtrahend.scale())であるBigDecimalを返します。
3.public BigDecimal multiply(BigDecimal multiplicand)
値が(this×multiplicand)でスケールが(this.scale()+multiplicand.scale())であるBigDecimalを返します。

Javaコード

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
package com.arkgame.study.java.cft;
import java.math.BigDecimal;
public class BigDecimalDemo {
private static final String cftA = "120";
private static final Double cftB = 12.00;
public static void main(String[] args) {
// BigDecimal Long
BigDecimal bdA = BigDecimal.valueOf(Long.valueOf(cftA));
// BigDecimal
BigDecimal bdB = BigDecimal.valueOf(cftB);
// 加算
String addRes = bdA.add(bdB).toString();
System.out.println("加算結果: " + addRes);
// 減算
String subRes = bdA.subtract(bdB).toString();
System.out.println("減算結果: " + subRes);
// 乗算
String multRes = bdA.multiply(bdB).toString();
System.out.println("乗算結果: " + multRes);
// 除算
String divRes = bdA.divide(bdB, BigDecimal.ROUND_HALF_UP).toString();
System.out.println("除算結果: " + divRes);
}
}
package com.arkgame.study.java.cft; import java.math.BigDecimal; public class BigDecimalDemo { private static final String cftA = "120"; private static final Double cftB = 12.00; public static void main(String[] args) { // BigDecimal Long BigDecimal bdA = BigDecimal.valueOf(Long.valueOf(cftA)); // BigDecimal BigDecimal bdB = BigDecimal.valueOf(cftB); // 加算 String addRes = bdA.add(bdB).toString(); System.out.println("加算結果: " + addRes); // 減算 String subRes = bdA.subtract(bdB).toString(); System.out.println("減算結果: " + subRes); // 乗算 String multRes = bdA.multiply(bdB).toString(); System.out.println("乗算結果: " + multRes); // 除算 String divRes = bdA.divide(bdB, BigDecimal.ROUND_HALF_UP).toString(); System.out.println("除算結果: " + divRes); } }
package com.arkgame.study.java.cft;

import java.math.BigDecimal;

public class BigDecimalDemo {

      private static final String cftA = "120";
      private static final Double cftB = 12.00;

      public static void main(String[] args) {

            // BigDecimal Long
            BigDecimal bdA = BigDecimal.valueOf(Long.valueOf(cftA));
            // BigDecimal
            BigDecimal bdB = BigDecimal.valueOf(cftB);

            // 加算
            String addRes = bdA.add(bdB).toString();
            System.out.println("加算結果: " + addRes);
            // 減算
            String subRes = bdA.subtract(bdB).toString();
            System.out.println("減算結果: " + subRes);
            // 乗算
            String multRes = bdA.multiply(bdB).toString();
            System.out.println("乗算結果: " + multRes);
            // 除算
            String divRes = bdA.divide(bdB, BigDecimal.ROUND_HALF_UP).toString();
            System.out.println("除算結果: " + divRes);

      }

}

結果
加算結果: 132.0
減算結果: 108.0
乗算結果: 1440.0
除算結果: 10

Java

Posted by arkgame