大话Java混合运算规则
重要规则:
//byteshortchar做混合运算时,先各自转换为int类型,再做运算 //以下在编译期就出错,因为编译器只检查语法,jvm不允许int转换为byte(丢失精度),虽然结果为30,但是运算是在运行期 bytea=10; shortb=20; bytec=(a+b);//报错 System.out.println(c);
结论:
关于基本数据类型转换规则:
1、8中基本数据类型除boolean外都可以相互转换;
2、小容量向大容量转换为自动转换(默认转换):
byte
3、byteshortchar做混合运算时,各自都先转换为int类型在做运算;
4、大容量向小容量转换是强制类型转换,需要加强制类型转换符,这样编译器能通过,但运行期可能损失精度;
5、如果整数没有超出byteshortchar的取值范围,可以直接将这个整数赋值给byteshortchar;
6、多种数据类型做运算,先转换成容量大的那种再做运算。
eg:
intf=10/3;能否正常运行?
可以,因为10为int,3为int,运算后还为int,10/3=3,再赋值给f;
重要语法:
扩展运算符不改变运算结果类型:
bytea=10; a+=a;//相当于a=(byte)a+a;
总结
以上就是本文关于大话Java混合运算规则的全部内容,希望对大家了解Java有所帮助。感兴趣的朋友可以参阅:Java语言一元运算符实例解析 、 浅谈Java变量赋值运算符及相关实例 、Java大数字运算之BigInteger等,有什么问题可以随时留言,大家一起交流学习。感谢朋友们对毛票票网站的支持。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。