当前位置: 技术问答>java相关
关于造型的问题
来源: 互联网 发布时间:2015-09-20
本文导语: 能不能一次将一个int变量复制给2个byte变量,比如 byte[] a = ?; int b = ?; (int)a[i] = b;? | java里的int是4個字節,不是兩個字節 | a[i] = (byte)b 这么写没问题,不过需要清楚的是这么...
能不能一次将一个int变量复制给2个byte变量,比如
byte[] a = ?;
int b = ?;
(int)a[i] = b;?
byte[] a = ?;
int b = ?;
(int)a[i] = b;?
|
java里的int是4個字節,不是兩個字節
|
a[i] = (byte)b
这么写没问题,不过需要清楚的是这么写可能会丢失数据信息
因为int的范围在 -2147483648~2147483647 (四字节有符号)
而 byte只是 -128~127 (1字节)
如果你的b在下面的范围内,数据不会变
如果在上面的范围内,去看看javadoc的java.lang.Integer的说明吧
这么写没问题,不过需要清楚的是这么写可能会丢失数据信息
因为int的范围在 -2147483648~2147483647 (四字节有符号)
而 byte只是 -128~127 (1字节)
如果你的b在下面的范围内,数据不会变
如果在上面的范围内,去看看javadoc的java.lang.Integer的说明吧