bigdecimal加减乘除运算顺序?
答:bigdecimal加减乘除运算顺序如下:
首先是bigdecimal的初始化,加法 add()函数、减法subtract()函数、乘法multiply()函数、除法divide()函数、绝对值
abs()函数。
注意:
1)System.out.println()中的数字默认是double类型的,double类型小数计算不精准。
2)使用BigDecimal类构造方法
传入double类型时,计算的结果也是不精确的!
因为不是所有的浮点数
都能够被精确的表示成一个double 类型值,有些浮点数值不能够被精确的表示成 double 类型值,因此它会被表示成与它最接近的 double 类型的值。必须改用传入String的构造方法。
除法divide()参数使用;
使用除法函数在divide的时候要设置各种参数,要精确的小数位数和舍入模式,不然会出现报错。
Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算。双精度浮点型变量double可以处理16位有效数。
java i=7 i=i%2 i =?
在java语言中,运算符号 % 代表是取模运算,即求两个数的除法的余数。如求a除以b的余数,用JAVA语言表示就是:a % b
本题中,java语句的顺序是:
I=7
I=I %2
第一调语句代表将常数7赋给变量I,即I的值是7;第二条语句是求I除以的2的余数。由于I的值是7,所以,I除以2的余数是1
因此,本题输出I的值是1
java什么时候用常量,什么时候用枚举呢?
写代码是一种艺术,结构层次好的代码可以少出bug,提高效率。而在Java编程中,什么时候用常量,什么时候用枚举呢?曾经的我也迷茫过。当然,经历了多年的编程之后,也陆陆续续有了自己的思考。
在我看来,具备一定规则的常量集合需要使用枚举类,既包含一年四季,一周七天这种自然枚举,也包含在编译时就知道所有可能值的其它情况,比如加减乘除等运算。枚举值不必是固定的,可以在后面继续添加。
而对于毫无规则归类可言的一些常量:如SUCCUSS字符串、密钥串、路径等等这些,可以放在一个常量类里面糅在一起。在《Effective Java》一书中,作者建议使用一般类加私有构造方法的方式,而在 sonar 代码质量扫描中,也将该方式定为常量类处理的推荐方式。
而相对于常量类,枚举的优点是很明显的。枚举更具可读性、更安全,并且功能更强大。许多枚举不需要明显的构造器和成员变量,而有些枚举通过为每个枚举值绑定数据,并且为这些数据提供函数,可以添加额外的功能,枚举值也可以直接用来进行数据库存储。
总而言之,建议在具备相关性的前提下,能使勇枚举的地方一定要要用枚举,如果无法使用枚举时,建议使用带有私有构造函数的常量类。
作者:夕阳雨晴,欢迎关注我的头条号:偶尔美文,主流Java,为你讲述不一样的码农生活。