2012-08-24 3 views
1

créer méthode pour afficher l'élément dans le tableau 2D. mais je ne peux pas spécifier la longueur du tableau pour chaque dimension. ceci est mon codeComment obtenir la longueur du tableau 2D

public static void display2DArray(String[][] array){   
    for (int i = 1; i < array.length; i++) { 
     for (int j = 1; j < array.length; j++) { 
      System.out.println("Document "+i+ " Section "+j); 
      System.out.println(" "+array[i][j]); 
     } 
     System.out.println(" "); 
    } 
} 

Aidez-moi s'il vous plaît.

Répondre

7

Essayez cette façon

public static void display2DArray(String[][] array){ 
    for (int i = 0; i < array.length; i++) { 
     for (int j = 0; j < array[i].length; j++) { 
      System.out.println("Document "+i+ " Section "+j); 
      System.out.println(" "+array[i][j]); 
     } 
     System.out.println(" "); 
    } 
} 
0

D'abord, i et j devraient tous deux par défaut à 0. En second lieu, le changement j être array[0].length, et avant un contrôle si le tableau est vide, juste retour tout de suite. Un tableau peut être représenté comme suit:

{{[0][0] [0][1] [0][2]}, 

{[1][0] [1][1] [1][2]}, 

{[2][0] [2][1] [2][2]}} 

Donc, pour obtenir la hauteur, vous faites juste array.length, mais pour la largeur, tu dois obtenir un des tableaux interal lengths, donc array[0].length fera

0

En Java, tout objet tableau intrinsèque (ie Object []) a la propriété "length". Si vous avez un objet de type Object [] [], vous pouvez l'afficher en tant que (Object []) [], ce qui signifie un tableau de tableaux. Donc ce que vous faites est d'utiliser l'index "i" pour obtenir un tableau interne, puis un index "j" pour obtenir un élément du tableau interne. A savoir:

Object[][] myArray; 

for (int i = 0; i < myArray.length; ++i) 
    for (int j = 0; j < myArray[i].length; ++j) 
    { /* do something with myArray[i][j] */ } 
1

Vous pouvez utiliser cette façon aussi ..

public static void display2DArray(String[][] array){ 
    for (String[] strings : array) 
    { 
    for (String string : strings) 
    { 
     System.out.println(" "+string); 
    } 
    System.out.println(" "); 
    } 
} 
Questions connexes