我是靠谱客的博主 贪玩小鸭子,最近开发中收集的这篇文章主要介绍java大转小_Java 小类型与大类型,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

小类型向大类型(隐式类型转换)

小类型向大类型的转换JVM会自动完成,不需要编写额外的代码。如下代码:

byte b1 = 3;

b1 = b1 +3

这样会在b1 = b1 +b2处报错,原因在于Java默认的证书类型的是 int 类型,b1+b2返回的结果会通过隐式类型转换将结果变成int类型,又由于b1是 byte类型的变量,因此赋值会报错。

如果这样写代码:

int b1 = 3;

byte b2 = 3;

b1 = b1 +b2;

因为JVM会自动完成隐式类型转换,所以 b1+b2 的结果会变成 int 类型,什么事都没有、

大类型向小类型

还是上面的例子:

byte b1 = 3;

b1 = b1 +3

如果想要将结果类型保存为 byte类型,则需要强制类型转换。将代码改成如下形式:

byte b1 = 3;

b1 = (byte)b1 +3

报错便消失了。

需要注意的是大类型转换小类型时,源数据的数据位会变成符号位。

int i=257

byte b = (byte)i

因为257 = 100000001

经过强制类型转换,超出长度的位数会被丢弃,剩下的数据位成为了符号位

结果 = 00000001 ,即1

结论:

小类型向大类型的转换JVM会自动完成隐式类型转换,不需要编写额外的代码。

大类型向小类型的转换需要编写额外代码进行强制类型转换。

欢迎加入学习交流群569772982,大家一起学习交流。

最后

以上就是贪玩小鸭子为你收集整理的java大转小_Java 小类型与大类型的全部内容,希望文章能够帮你解决java大转小_Java 小类型与大类型所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(46)

评论列表共有 0 条评论

立即
投稿
返回
顶部