在Java中将长字符转换为字节 [英] Casting long to byte in Java
本文介绍了在Java中将长字符转换为字节的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我无法理解以下内容:
在Java中,
long l = 130L;
byte b = (byte)l;
如果我打印b的值,为什么我得到-126?字符串是用Java签名的,所以值的范围是-128到127,它们的长度是多少?
If I print the value of b, why do I get -126? What is the bit representation of long l?
推荐答案
130的位模式为长,当简单截断为8位时,它是-126作为一个字节的位模式。
The bit pattern for 130 as a long, when simply truncated to 8 bits, is the bit pattern for -126 as a byte.
另一个例子:
int x = 255;
byte b = (byte) x; // b is now -1
这篇关于在Java中将长字符转换为字节的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文