Java:byte [1] vs byte [1024]

时间:2014-03-17 00:27:42

标签: java byte

我一直试图让一些流通过TCP工作但是我似乎失败了,可能是因为我不太了解字节流。

我知道它是一个字节,它是8位。例如:0000 0001(将是" int 1")

当我定义时,请说:

Byte[] myByte = new byte[1];

" 1"做? myByte只能携带一个字节吗?

1 个答案:

答案 0 :(得分:2)

new type[x]是使用type[]创建数组[object] (类型为x 1 )的表达式的语法元件。

请参阅Nuts & Bolts: Arrays

  

数组是一个容器对象,它包含固定数量的单个类型的值。 在创建数组[object]时建立数组的长度(即new byte[1])。创建后,它的长度是固定的..

因此,new byte[1]为单个字节(长度= 1)创建一个数组[object],new byte[1024]创建一个1024字节元素的数组(长度= 1024)。


1 帖子中的代码有点“有趣”,因为它使用Byte[]作为数组类型,但使用new byte[1]来创建实际的数组对象;在两个地方都应该是byte。我忽略了这是一个错字,因为原始数组的自动装箱在Java中是not supported