2012-01-01 11 views
10

配列のサイズが制限されたバイト配列の配列を宣言するにはどうすればよいですか?これは私が思っていたものですが、うまくいかず、何も見つかりませんでした。Javaでバイト配列の配列を宣言する

private Integer number =10000; 
private byte[] data[]; 
data = new byte[][number]; 

答えて

13

これはなんですか?

private byte[][] data; // This is idiomatic Java 

data = new byte[number][]; 

これは配列の配列を作成します。しかし、これらのサブアレイはまだ存在しません。したがって、それらを作成することができます:

data[0] = new byte[some_other_number]; 
data[1] = new byte[yet_another_number]; 
... 

(または明らかにループ内)。それらはすべて同じ長さなら

あるいは、あなたは1本のヒットで全体のことを行うことができます。

data = new byte[number][some_other_number]; 
+1

はい。まったく。明らかにするには、それぞれが未定義のサイズの「数値」バイト配列を持つことになりますか? – gtdevel

+2

@gtdevel:その最初のコードスニペットでは、長さが 'number'の配列になります。その配列の各要素はバイト配列への参照であり、 'null'に初期化されます。すなわち 'data [0] == null'が真です。 –

+0

ありがとう、それは私の質問に完全に答えます。 – gtdevel

2

とすることができる、あなたは宣言して2次元配列

private byte[][] data = new byte[10][number]; 

が必要サイズ番号がそれぞれ10バイトの配列

+1

"number"セクションを空白のままにしておくと、サイズがバイトごとに異なる可能性がありますか? – gtdevel