2021-04-05

本文展示了如何使用Java中的Math类进行基本数学运算,如最大值、最小值、次方等。同时,通过BigDecimal和BigInteger类演示了如何进行精确的数值计算,避免浮点数误差,并实现了加减乘除以及取余操作。还讨论了BigDecimal在除法运算中的注意事项和RoundingMode的使用。
摘要由CSDN通过智能技术生成

如果方法不是static修饰,那么必须new一个对象,然后使用对象调用(引用.调用),如果方法是static的,那么可以直接类名.方法名调用(类名.调用)。

package task11;

public class MathTest {
public static void main(String[] args) {
System.out.println(“获取的两个整数中最大值的是:”+ Math.max(10,20));
System.out.println(“获取的两个整数中最小值的是:”+ Math.min(10,20));
System.out.println(“获取次方的结果是:”+ Math.pow(2,3));
System.out.println(“获取绝对值的结果是:”+ Math.abs(-5));
System.out.println(“进行四舍五入的结果是:”+ Math.round(3.14));
System.out.println(“该整数的平方根是:”+ Math.sqrt(16));
System.out.println(“生成的随机数是:”+ Math.random());

}

}
在这里插入图片描述在这里插入图片描述

package task11;
import java.math.BigDecimal;
import java.math.RoundingMode;

public class BigDecimalTest {
public static void main(String[] args) {
//1.构造BigDecimal类型的两个对象
BigDecimal bd1 = new BigDecimal(“5.2”);
BigDecimal bd2 = new BigDecimal(“1.3”);
//2.使用构造完毕的对象实现加减乘除运算
System.out.println(“实现加法运算的结果是:”+ bd1.add(bd2));
System.out.println(“实现减法运算的结果是:”+ bd1.subtract(bd2));
System.out.println(“实现乘法运算的结果是:”+ bd1.multiply(bd2));
System.out.println(“实现除法运算的结果是:”+ bd1.divide(bd2));
System.out.println("---------------------");
System.out.println(0.1+0.2);
//0.30000000000000004
BigDecimal bd3 = new BigDecimal(“0.1”);
BigDecimal bd4 = new BigDecimal(“0.2”);
System.out.println(“精确的结果是:”+ bd3.add(bd4));
System.out.println("---------------------");
//4.注意事项
BigDecimal bd5 = new BigDecimal((“2”));
BigDecimal bd6 = new BigDecimal((“0.3”));
//System.out.println(“除法运算的结果是:”+ bd1.divide(bd6));
//Non-terminating decimal expansion;因为除不尽,
// 但是BigDecimal又是一个精确计算的语句,因此无法计算
System.out.println(“除法运算的结果是:”+ bd5.divide(bd6, RoundingMode.HALF_UP));
//除法运算的结果是:7

}

}

package task11;

import java.math.BigInteger;

public class BigIntegerTest {
public static void main(String[] args) {
//1.构造两个BigInteger类型的对象并指定初始值
BigInteger bi1 = new BigInteger(“20”);
BigInteger bi2 = new BigInteger(“8”);
//2.实现加减乘除取余操作并打印
System.out.println(“实现加法运算的结果是:”+bi1.add(bi2));
System.out.println(“实现减法运算的结果是:”+bi1.subtract(bi2));
System.out.println(“实现乘法运算的结果是:”+bi1.multiply(bi2));
System.out.println(“实现除法运算的结果是:”+bi1.divide(bi2)); //2
System.out.println(“实现取余运算的结果是:”+bi1.remainder(bi2)); //4
System.out.println("---------------------");
//3.一次性得到商和余数
BigInteger[] arr = bi1.divideAndRemainder(bi2);
for (int i=0; i< arr.length; i++){
System.out.println(“下标为”+i+“的元素是:”+arr[i]);//2 4
}

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值