[英]Ceate a List of byte[]
如何創建一個byte[]
列表(不是Byte
)?*
我想要的是這樣的:
byte[] deb = new byte[Byte.MIN_VALUE];
List<byte[]> begin = new LinkedList<>();
begin.add(deb);
這樣做很好用,因為數組是 Java 中的對象 ,因此您可以用它們構建List
。
請注意,只有在Java 7中才能執行
List<byte[]> begin = new LinkedList<>();
在舊版本中,您必須重新聲明byte[]
:
List<byte[]> begin = new LinkedList<byte[]>();
這已經提過,但我在這里重申一下。 Byte.MIN_VALUE
小於0
; 您不能創建長度小於0
的數組(這會導致運行時錯誤,尤其是NegativeArraySizeException
)。 您是說Byte.MAX_VALUE
嗎?
問題在下面的線
byte[] deb = new byte[Byte.MIN_VALUE]; <---Byte.MIN_VALUE -127
您應該使用正值聲明數組,否則,您將獲得NegativeArraySizeException 。
byte[] deb = new byte[Some positive value];
Byte.MIN_VALUE
為-127
。 您不能在Java中創建負索引數組。
Java中的數組是對象。 byte []是一個保存字節值的數組。 集合接受對象,因此List是一個保存byte []的集合。 您的代碼應該可以正常工作。
這應該工作正常:
List<byte[]> begin = new LinkedList<byte[]>();
首先, Byte.MIN_VALUE
是-128
。 如果嘗試創建長度為負的數組,則會出現錯誤。
其次,如其他答案中所述,創建列表的代碼應為
List<byte[]> begin = new LinkedList<byte[]>();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.