【Java学习专题】基本数据类型转换

Ava ·
更新时间:2024-11-14
· 859 次阅读

基本数据类型(四类八种) 整数型:byte、shout、int、long 浮点型:float、double 布尔型:boole 字符型:char 思维导图

基本数据类型间的转换:

实例代码: public class Test01{ public static void main(String[] args){ int a = 129; byte b =(byte)a; System.out.println(b);//b为-127 } } 分析: 128的二进制是:10000000 int类型的128二进制表示为:00000000 00000000 00000000 10000001 这里的输出结果是-127 为什么会这样呢? 原因在于int类型的变量在内存中是占32位 强制转换为byte类型,byte是8位 也就是说byte类型变量接收转变后会将int类型的前面24位会舍去 只按照8位算 byte类型的128是:10000001 由于最高位是符号位:1代表是一个负数 而存在内存中的这八位是(负数在计算机中是以补码的形式存在) 补码转换成原码:减1取反 所以:100000001-1=10000000 取反:11111111 最高位是符号位,所以-(64+32+16+8+4+2+1)=-127

注意:综上所述,强制转换需谨慎,不超过转换后的范围还好,超过了范围会失精度。

运算符

+=

 a+=b

a=a+b

-= 

a-=b

a=a-b

*= 

a*=b

a=a*b

/=

 a/=b

a=a/b

%=

a%=b 

a=a%b

注意:byte a += 3; byte a = a +3  他们是不同的,因为a + 3是一个int类型,如果要赋值给byte a 就需要强制转换。

王华春一Jason 原创文章 153获赞 99访问量 15万+ 关注 他的留言板 展开阅读全文
作者:王华春一Jason



java学习 基本数据类型 java学 JAVA 数据类型 数据 类型转换

需要 登录 后方可回复, 如果你还没有账号请 注册新账号
相关文章