2012-01-01 14 views

Odpowiedz

13

Coś takiego?

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

data = new byte[number][]; 

Spowoduje to utworzenie tablicy tablic. Jednak żadna z tych pod-tablic jeszcze nie istnieje. Można je utworzyć w następujący sposób:

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

(lub w pętli, oczywiście).

Alternatywnie, jeśli są wszystkie tej samej długości, można wykonać całość w jednym trafieniu:

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

Tak. Dokładnie. Żeby to wyjaśnić, czy to oznacza, że ​​będę posiadał tablice bajtowe z "liczbą", z których każda ma nieokreślony rozmiar? – gtdevel

+2

@gtdevel: W tym pierwszym fragmencie kodu będziesz mieć tablicę o długości "number". Każdy element tej tablicy jest odwołaniem do tablicy bajtów i jest inicjowany jako 'null'. tj. "data [0] == null" jest prawdziwe. –

+0

Dzięki, to doskonale odpowiada na moje pytanie. – gtdevel

2

może być potrzebny jest układ 2-D

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

który deklaruje 10 tablic bajtowych o rozmiarze nr

+1

A jeśli zostawię pustą sekcję "liczba", czy to oznacza, że ​​rozmiar może się różnić w zależności od każdego bajtu? – gtdevel

Powiązane problemy