[amato@flash ~]$ jshell | Welcome to JShell -- Version 17.0.5 | For an introduction type: /help intro jshell> int[][] a= { {1,2,3}, {4,5,6}} a ==> int[2][] { int[3] { 1, 2, 3 }, int[3] { 4, 5, 6 } } jshell> a[0][0]=15 $2 ==> 15 jshell> a a ==> int[2][] { int[3] { 15, 2, 3 }, int[3] { 4, 5, 6 } } jshell> int[] b= { 56, 89} b ==> int[2] { 56, 89 } jshell> a[0] = b $5 ==> int[2] { 56, 89 } jshell> a a ==> int[2][] { int[2] { 56, 89 }, int[3] { 4, 5, 6 } } jshell> b[0] = 999 $7 ==> 999 jshell> a a ==> int[2][] { int[2] { 999, 89 }, int[3] { 4, 5, 6 } } jshell> int x = 5; x ==> 5 jshell> int y= 4 y ==> 4 jshell> x = y x ==> 4 jshell> x x ==> 4 jshell> y= 8 y ==> 8 jshell> x x ==> 4 jshell> a a ==> int[2][] { int[2] { 999, 89 }, int[3] { 4, 5, 6 } } jshell> a[0] $16 ==> int[2] { 999, 89 } jshell> a[0].length $17 ==> 2 jshell> a[1].length $18 ==> 3 jshell> a a ==> int[2][] { int[2] { 999, 89 }, int[3] { 4, 5, 6 } } jshell> a.length $20 ==> 2 jshell> // Inizializzazioni parziali di array bidimensionali jshell> // Possiamo inizializzare un array 2d indicando gli elementi jshell> int[][] a= { {1,2,3}, {4,5,6}} a ==> int[2][] { int[3] { 1, 2, 3 }, int[3] { 4, 5, 6 } } jshell> // oppure possiamo inizializzare indicando il numero di righe e colonne jshell> int[][] a = new int[4][2] a ==> int[4][] { int[2] { 0, 0 }, int[2] { 0, 0 }, int[2] { 0, 0 }, int[2] { 0, 0 } } jshell> // crea un array 2d regolare (tutte le righe hanno lo stesso numero di colonne), riempito con zero jshell> // Posso perĂ² inizializzare i vettori 2d in maniera "parziale", come se fossero vettori semplice jshell> int[][] a = new int[4][] a ==> int[4][] { null, null, null, null } jshell> a[0] $24 ==> null jshell> a[0][1] | Exception java.lang.NullPointerException: Cannot load from int array because "REPL.$JShell$11.a[0]" is null | at (#25:1) jshell> a[0] = new int[] { 3,4,5} $26 ==> int[3] { 3, 4, 5 } jshell> a a ==> int[4][] { int[3] { 3, 4, 5 }, null, null, null } jshell> int[][] a = new int[][4] | Error: | ']' expected | int[][] a = new int[][4]; | ^ jshell> // ^^^^^ Nella inizializzazione parziale non posso specifiare solo il numero di colonne jshell>