课后作业
运行结果如下
枚举类型是引用类型!
枚举不属于原始数据类型,它的每个具体值都引用一个特定的对象。相同的值则引用同一个对象。
可以使用“==”和equals()方法直接比对枚举变量的值,换句话说,对于枚举类型的变量,“==”和equals()方法执行的结果是等价的。
valueof() 函数是将对象转换为所需类型
反码是进行负数的运算
补码是用来进行 反码的跨零运算
int转float必然会导致精度丢失,int型是32位,float型也是32位,但是float是由1位符号位+8位指数位+23位小数位组成。
所以float只能有效表示24位以内的int型数据(float有一位省略的整数位)当int型是24位以上的时候,多余的位就会被舍去。
其他类型的强制转换也都是类似情况
double 和浮点数类型不精确
我们的计算机在存储小数时肯定是有长度限制的,所以会进行截取部分小数进行存储,从而导致计算机存储的数值只能是个大概的值,而不是精确的值。从这里看出来我们的计算机根本就无法使用二进制来精确的表示 2.1 这个十进制数字的值,连表示都无法精确表示出来,计算肯定是会出现问题的。
第一个输出 是因为 “x+y” 是字符串 ,第一个+号 将会判定为字符串的+ ,第二个也是
第二个输出 第一个+ 会判断为算数的+