java中byte、short、char、int的转换

java中byte、short、 char和Int“字面值”之间可以不加强制类型转换,只要int类型的“字面值”不超过byte、short、char类型的范围。如:

byte i = 10(java中默认为int类型);可以转换;byte i = 128;不可以转换,128超出byte类型所能表示的范围,而如果int a = 10; byte b = a;也是不允许的;short、char类似。long和int如果要将long类型转换为int类型则必须要强制类型转换。如:int i = (int)1L;

byte、short、char之间计算不会互相转换,首先转换成int再计算。

boolean类型不能转换成其他类型。

容量小的类型会默认转换为容量大的类型:byte->short->int->long->float->double

将容量大的类型转换成容量小的类型需要进行强制转换。

在 .NET byte 类型可以通过隐式转换转换shortchar 类型,然后又可以通过隐式转换转换int 类型。 byte 类型是一个无符号的8位整数,其取值范围为 0 到 255。short 类型是一个有符号的16位整数,其取值范围为 -32768 到 32767。char 类型是一个无符号的16位整数,其表示 Unicode 字符。 由于 byte 类型的取值范围小于 shortchar 类型,因此可以将 byte 类型的值隐式转换shortchar 类型。 例如,我们可以使用以下代码进行转换byte myByte = 100; short myShort = myByte; // byteshort char myChar = (char)myByte; // bytechar 在这个实例,我们先将 byte 类型的变量 myByte 的值设置为 100。然后,我们将 myByte 隐式转换short 类型,并将结果存储在 myShort 变量。由于 short 类型的取值范围大于 byte 类型,没有发生数据丢失。 接着,我们将 myByte 强制转换char 类型,并将结果存储在 myChar 变量。由于 char 类型也是一个无符号的整数类型,与 byte 类型类似,因此可进行转换。在这种情况下,我们使用强制转换操作符来确保数据类型的转换。同样地,由于 char 类型的取值范围大于 byte 类型,没有发生数据丢失。 最后,如果需要将 shortchar 类型的值转换int 类型,则可以直接隐式转换int myInt = myShort; // shortint int myInt2 = myChar; // charint 通过这些转换,我们可以根据需求在不同的数据类型之间进行转换
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值