j=[0...3] M ╒═══╕ ╒═══╕┌────┬────┬────┬────┐ └───>│ 2 │ ┌─>│ 4 ││ 10 │ 11 │ 12 │ 13 │ ╞═══╡ │ ╘═══╛└────┴────┴────┴────┘ i==0 │ *─┼──┘ j=[0...5] M[1][6─1] ├───┤ ╒═══╕┌────┬────┬────┬────┬────┬────┐ i==1 │ *─┼────>│ 6 ││ 14 │ 15 │ 16 │ 17 │ 18 │ 19 │ ├───┤ ╘═══╛└────┴────┴────┴────┴────┴────┘ i==2 │ *─┼──┐ j=[0...2] └───┘ │ ╒═══╕┌────┬────┬────┐ └─>│ 3 ││ 20 │ 21 │ 22 │ ╘═══╛└────┴────┴────┘ M[2].length /** Muestra que las filas de una matriz pueden ser de diferente tamaño. */ /* j=[0...3] M +---+ +---++-------------------+ +--->¦ 2 ¦ +->¦ 4 ¦¦ 10 ¦ 11 ¦ 12 ¦ 13 ¦ ¦---¦ ¦ +---++-------------------+ i==0 ¦ *-+--/ j=[0...5] M[1][6-1] +---¦ +---++-----------------------------+ i==1 ¦ *-+---->¦ 6 ¦¦ 14 ¦ 15 ¦ 16 ¦ 17 ¦ 18 ¦ 19 ¦ +---¦ +---++-----------------------------+ i==2 ¦ *-+--\ j=[0...2] +---+ ¦ +---++--------------+ +->¦ 3 ¦¦ 20 ¦ 21 ¦ 22 ¦ +---++--------------+ M[2].length */ static void main_matriz_loca() { boolean assertTrue = false; int M[][] = new int[2][]; assertTrue = ( 2 == M.length ); M[0] = new int[4]; assertTrue = ( 4 == M[0].length ); M[1] = new int[6]; assertTrue = ( 6 == M[1].length ); M[2] = new int[3]; assertTrue = ( 3 == M[2].length ); int n = 10; for (int i=0; i