0

byte[](not )のリストを作成する方法Byte?*

私が欲しいのは次のようなものです:

byte[] deb = new byte[Byte.MIN_VALUE];
List<byte[]> begin = new LinkedList<>();
begin.add(deb);
4

5 に答える 5

8

配列はJava のオブジェクトであるため、うまく機能Listします。そのため、それらから s を作成できます。


Java 7でのみできることに注意してください

List<byte[]> begin = new LinkedList<>();

古いバージョンでは、次のように言い換える必要がありますbyte[]:

List<byte[]> begin = new LinkedList<byte[]>();

これはすでに取り上げられていますが、ここでもう一度繰り返します。Byte.MIN_VALUE未満です0。より小さい長さの配列を作成することはできません0(実行時エラー、具体的には a になりますNegativeArraySizeException)。ということByte.MAX_VALUEですか?

于 2012-10-29T14:04:11.077 に答える
0

Java の配列はオブジェクトです。byte[] は、バイト値を保持する配列です。コレクションはオブジェクトを受け入れるため、List は byte[] を保持するコレクションです。コードは問題なく動作するはずです。

于 2012-10-29T14:04:44.840 に答える
0

これはうまくいくはずです:

List<byte[]> begin = new LinkedList<byte[]>();
于 2012-10-29T14:05:03.893 に答える
0

まず、Byte.MIN_VALUEです-128。負の長さの配列を作成しようとすると、エラーが発生します。

次に、他の回答で述べたように、リストを作成するコードは次のようにする必要があります

List<byte[]> begin = new LinkedList<byte[]>();
于 2012-10-29T14:08:15.787 に答える
0

問題は下の行にあります

 byte[] deb = new byte[Byte.MIN_VALUE]; <---Byte.MIN_VALUE -127 

配列を正の値で宣言する必要があります。そうしないと、 NegativeArraySizeExceptionが発生します。

byte[] deb = new byte[Some positive value];

Byte.MIN_VALUEです-127。Java で負のインデックス配列を作成することはできません。

于 2012-10-29T14:03:59.640 に答える