Java 五条运算规则
1.运算结果的数据类型,与参与运算的最大类型保持一致
2.byte short char 3种比int小的类型,运算时会先自动提升成int,再参与运算
3.整数运算溢出问题
4.浮点数运算不精确的现象
5浮点数的特殊值
package cn.tedu.basic2;
/**本类用于测试5条运算规则*/
public class Demo3 {
public static void main(String[] args) {
/**1.运算结果的数据类型,与参与运算的最大类型保持一致*/
System.out.println(3/2);//1,int/int->int
System.out.println(3/2d);//1.5,int/double->double
/**2.byte short char 3种比int小的类型,运算时会先自动提升成int,再参与运算*/
byte b1 = 1;
byte b2 = 2;
//byte b3 = b1+b2;//这样会报错,因为是int1+int2 = int3
byte b3 = (byte) (b1+b2);//如果不想报错,需要强制类型转换
/**3.整数运算溢出问题*/
//需求:已知:光速3亿m/s,求光跑一年的长度
System.out.println(300000000L*60*60*24*365);
/**4.浮点数运算不精确的现象*/
System.out.println(1-0.8);
/**5浮点数的特殊值*/
System.out.println(3.14/0);//Infinity
System.out.println(0.0/0);//NaN-Not a Number
}
}