JavaSE知识-02(进制运算&数据类型&变量)
十进制转换为任意进制 除积倒取余
原码补码反码
负数原码求补码: 逐位取反再加1
负数补码求原码: 减1再逐位取反
定义不同数据类型的变量
数据类型转换之隐性转换
运行结果为7
数据类型转换之强制转换
强制转换超出范围
结果是-126
解析 130的二进制是00000000 00000000 00000000 10000010
运算的时候是以补码进行运算 10000010是-126补码
减1求-126反码 10000001
除符号位其余逐位取反 得-126原码 11111110
结果是44
解析 300的二进制是 00000000 00000000 00000001 00101100
运算的时候是以补码进行运算00101100是44的补码
与其原码相同
变量相加与常量相加的区别
上面的会提示错误: 可能会损失精度
算术运算符基本用法
第三行报错: 可能损失精度 右边b+1是byte和int进行混合运算会提升为int型
而第二行两句等价
第一句可能会损失精度