我读到Java中的字节数组用于表示二进制数据。我无法理解这一点。字节数组如何表示二进制数据(并且可以通过网络传输并可以构造回原始形式)。
字节可以有从-128到127的(整数)值;那么字节数组如何表示二进制数据呢?
最佳答案
Byte can be (integer) values
-128 to 127
, so how does a byte array represent a binary data?
每个字节(八位字节)都是一个八位序列,拥有字节序列可以让我们表示任意长度的二进制数据(尽管它仅限于每 8 位增量)。
大多数现代计算机的内存都是按字节序列寻址的,网络接口(interface)发送包含字节序列的数据包,硬盘驱动器存储字节序列(但只能在更大的 block 中寻址,例如 4096 字节)。
很少需要逐位访问数据,需要时可以使用按位运算符来完成,因此默认不提供位序列的数据类型。
So to conclude:
1 Byte == 8 bits
, andByte Array == stream of bits
, and hence represent binary data?
是的。例如:AByte Array
长度2 bytes
是 16 bits
的流的binary data
.
关于java - Java中如何使用字节数组来表示二进制数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51964438/