数据类型转换

 javaphp
自动类型转换

简单数据类型由低级向高级自动转换(byte,short,char)--int--long--float--double。如:

byte b;
int i=b;
long l=b;
float f=b;
double d=b;

char型转为比他高级的整型类型时候会自动转为ascii值,如需'1'=>1,则Character.getNumericValue(char ch)


  1. byte tByte = -2;  
  2. String tString = Integer.toBinaryString((tByte & 0xFF) + 0x100).substring(1); 

1、主要用到了Integer.toBinaryString方法转化为二进制的。但这个方法的参数是int型,所以需要先转换为int型。

2、转换为int型的方式:tByte & 0xFF

tByte: -2  如果自动转换为int型依旧为-2,但是 -2的int型转化为二进制是11111111111111111111111111111110。

因为Java中是以补码的方式显示内容的,-2的二进制原码是 10000000000000000000000000000010,转化为反码+1为补码,就是上述数据了。

但是我们想要的是10000010的原码,补码为111111110。所以对上述数据进行 & 0xFF的操作。

这一步看不懂的请看 java & 0xFF


 
强制类型转换高级类型向低级类型转换时候需要强制类型转换 
其他类型转换简单转为其他类型时候可以先转为包装类型,再用包装类型的方法转为目标类型





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值