Retourne le nombre de lignes dans le tableau 2d?
J'ai ce tableau 2d:
private boolean[][] landscape;
ce paysage tableau définit un étang avec son [lignes] et [colonnes]
La méthode, public int getRows()
, doit retourner le nombre de lignes dans le paysage de la matrice de
J'ai essayé tout à return landscape.length;
et qui n'a pas fonctionné. Quelques choses que j'ai essayé sans succès:
int count = 0;
for (boolean[] i : landscape){
count += i.length;
}
return count;
Et
int count = 0;
for (int i = 0; i < landscape.length; i++) {
if (landscape[i] != null){
count ++;
}
}
return count;
Le nombre de lignes et de colonnes dépend de ce que l'utilisateur sélectionne que je crois. Il y a un minimum de 5. Alors, comment puis-je faire?
return landscape.length
devrait fonctionner, en 2D tableaux sont rien, mais le tableau d'un tableau. Qu'entendez-vous par "ne marche pas"? S'il vous plaît essayez de donner des précisions sur ce que vous voulez. Pensez-vous vraiment dire "nombre de lignes", ou vous fait dire que "nombre d'éléments"?OriginalL'auteur user738647 | 2011-05-09
Vous devez vous connecter pour publier un commentaire.
Commençons par quelques définitions:
Supposons qu'un
3 x 4
matrice rectangulaire a 3 colonnes et 4 lignes et est représenté par:Pour obtenir le nombre de lignes et de colonnes:
Si vous pensez que j'ai des lignes et des colonnes mixtes, (mentalement) les renommer. (Il n'existe pas de convention universelle sur la dimension qui représente les colonnes qui représentent les lignes.)
Si vous vous attendez à une réponse autre que 3 ou 4, vous devrez expliquer de quoi vous parlez.
Évidemment, cela ne fonctionne que pour le carré et rectangulaire tableaux.
OriginalL'auteur Stephen C
Comment sur
return landscape[0].length
? Vous voulez être sûr que l'élément du tableau àlandscape[0]
a été initialisé déjà, mais il semble que ce serait bien.Voir, car (je suppose), vous êtes en cours d'initialisation comme
landscape[rows][cols]
, demandantlandscape.length
vous obtient le nombre decols
- il travaille à partir de l'extérieur. Vous avez besoin d'aller plus profond.Que serait une colonne de longueur.
Eh bien, dans ce cas, vous devez décrire votre problème, plus, de préférence avec des définitions exactes de "ne pas travailler".
OriginalL'auteur Doug
Donc 2D tableaux sont vraiment juste des tableaux de tableaux. Donc, si j'ai un tableau 2D avec 5 lignes et 4 colonnes, vous pourriez penser que c'est un tableau contenant 5 sous-réseaux qui disposent de 4 spots chaque.
De sortie:
Il est important de noter que java est considéré comme principaux des lignes (la ligne vient toujours en premier): Qui vient en premier dans un tableau 2D, des lignes ou des colonnes? Ceci est important parce que si vous parcourez première colonne (colonne 0: ligne 0, ligne 1, ligne 2, ligne 3, ligne 4; colonne 1: ligne 0, ligne 1, etc.), vous passer à travers le tableau 2D de façon inefficace, car la mémoire est stockée de façon consécutive, ligne par ligne, donc la colonne par colonne signifie que vous devez sauter sur les segments de mémoire et puis en remontant, au lieu d'aller juste consécutivement; lire sur les assembleurs et les compilateurs pour plus d'info.
OriginalL'auteur Anti Camper
Considérons une matrice:
Nous pouvons représenter cette matrice sous la forme d'un tableau 2D en java avec 4 lignes et 3 colonnes.
L'initialisation:
En java, les tableaux 2D ne sont pas entièrement la ligne majeure,mais un tableau de tableaux.
Mais pour répondre à votre question et de vous expliquer de manière plus facile, nous pouvons voir cela comme une ligne-major de l'arrangement.
Pour rendre les choses plus claires,
matrix[1]
points d'une ligne à l'indice 1.matrix[1]
est en fait un tableau. Sa longueur est égal au nombre de colonnes de cette matrice.Donc,
matrix[1].length
nous donnerait le nombre de colonnes. Ici, dans cet exemple, l'indice utilisé n'est pas pertinent jusqu'à ce qu'il n'est pas hors des limites du terrain. Nous aurions pu également utilisé 0 que l'index.Pour obtenir le nombre de lignes nous avons besoin pour obtenir la valeur de la longueur sur un tableau de variable qui nous donne le nombre de lignes.
En essence,
J'espère, je suis en mesure de répondre à votre question.
OriginalL'auteur Sahil Gupta
Votre code devrait fonctionner.
Vous pouvez poster votre code à la façon dont vous remplissez votre tableau 2D?
Voici un projet que j'ai fait qui a compté les lignes et les éléments dans mon tableau 2D.
OriginalL'auteur MasterProgrammer200
Stephen, votre code a une légère erreur, conformément à la convention générale. Selon la norme de la convention, ce qui suit devrait vous donner les bonnes valeurs de lignes et de colonnes:
Aussi, cela suppose que vous avez déjà le tableau renseigné et sont en vérifiant le nombre de lignes et de colonnes à la fin.
OriginalL'auteur Abhishek Rauniyar