Dúvida sobre array

Estava estudando sobre array e fiquei intrigado com uma coisa

Eu posso fazer isso:

int[] X[] = new[2][];
X[0] = new int[4];

Compila e executa!

Mas não posso fazer isso:

int[][] X[] = new[2][][];
X[0] = new int[4];

Erro de compilação! incompatible types

Alguém pode me ajudar?

Desde já agradeço!

O primeiro caso você tem um array bidimensional.
No segundo um tridimensional.

Você pode fazer:

int[][] X[] = new[2][2][]; 
X[0][0] = new int[4];

Ou ainda:

int[][] X[] = new[2][][]; 
X[0] = new int[4][4];

Valeu véio agora tô enxergando melhor!

:smiley:

Um abração pra vocÊ