ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

JAVA强制类型转换原理

2021-01-15 14:32:58  阅读:285  来源: 互联网

标签:类型转换 JAVA 00000000 损失 int 转换 强制


强制转换类型别

1 小容量转换成大容量直接转换;
2 大容量转换成小容量需要用强制转换符,虽然加上强制转换符编译可以通过但是可能会损失精度!所以强制类型转换要谨慎使用,因为损失精度之后可能损失非常严重。

强制转换原理

比如 Long类型转换为int类型
原始数据(long)00000000 00000000 00000000 00000000 00000000 00000000 00000000 01100100
强制转换后的数据: 00000000 00000000 00000000 01100100
(将左边二进制砍掉,所有数据强制转换都是这样完成的)
上述是:
long x = 100L;
int y = (int)x;
system.out.println(y);
的转换。所以说是有精度损失的,上面这个还好在左边全都是0所以不影响 如果是一些所有字节都在二进制占数字的话就会有很大的精度损失,甚至可能正负数变换。

Byte特殊之处

在JAVA中因为单纯的数字一般认为是int型但是,一个没有超过byte取值范围的数字赋值给byte是可以直接赋值输出的(不用强制转换),因为java就是这样规定的

标签:类型转换,JAVA,00000000,损失,int,转换,强制
来源: https://blog.csdn.net/m0_51144154/article/details/112664541

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有