A voir également:
- Indice de tableau en java
- Tableau croisé dynamique - Guide
- Tableau ascii - Guide
- Waptrick java football - Télécharger - Jeux vidéo
- Java apk - Télécharger - Langages
- Tableau word - Guide
3 réponses
Utilisateur anonyme
26 mai 2010 à 00:28
26 mai 2010 à 00:28
Salut,
elt 1 dimension 1 >> [0][0]
elt 1 dimension 2 >> [0][1]
elt 2 dimension 1 >> [1][0]
elt 2 dimension 2 >> [1][1]
elt 3 dimension 1 >> [2][0]
elt 3 dimension 2 >> [2][1]
etc...
Cordialement,
Dan
elt 1 dimension 1 >> [0][0]
elt 1 dimension 2 >> [0][1]
elt 2 dimension 1 >> [1][0]
elt 2 dimension 2 >> [1][1]
elt 3 dimension 1 >> [2][0]
elt 3 dimension 2 >> [2][1]
etc...
Cordialement,
Dan
Utilisateur anonyme
27 mai 2010 à 08:49
27 mai 2010 à 08:49
Ce n'est sans doute pas exactement ce que tu veux faire, mais l'exemple suivant t'aidera peut-être:
Cordialement,
Dan
//Supposons que nous avons un tableau de caractères (char) à 2 dimensions (monTableau) //et que la 1ère dimension représente les lettres a à z et la 2ème dimension celles de z à a char[][] monTableau = { {'a', 'z'}, {'b', 'y'}, {'c', 'x'}, {'d', 'w'}, {'e', 'v'}, {'f', 'u'}, {'g', 't'}, {'h', 's'}, {'i', 'r'}, {'j', 'q'}, {'k', 'p'}, {'l', 'o'}, {'m', 'n'}, {'n', 'm'}, {'o', 'l'}, {'p', 'k'}, {'q', 'j'}, {'r', 'i'}, {'s', 'h'}, {'t', 'g'}, {'u', 'f'}, {'v', 'e'}, {'w', 'd'}, {'x', 'c'}, {'y', 'b'}, {'z', 'a'}, }; System.out.println("LISTE des deux dimensions:"); System.out.println("1 2\n"); for(int i = 0; i < monTableau.length; i++) { System.out.println(monTableau[i][0] + " " + monTableau[i][1]); } //Nous voulons maintenant obtenir les indices du caractère 'r': char chAtrouver = 'r'; String strAtrouver = "" + chAtrouver; System.out.println("\nNous voulons savoir ou se trouve le char \'r\' (dimension 1) et\n" + "quel est le char qui lui correspond (dimension 2):\n"); for(int i = 0; i < monTableau.length; i++) { char chLu = monTableau[i][0]; String strLu = "" + chLu; if(strLu.equals(strAtrouver)) { System.out.println("Le char \'r\' se trouve en [i][0] soit: [" + i + "][0] (dimension 1)"); System.out.println("Le char se trouvant en [i][1] soit [" + i + "][1] (dimension 2) est " + "\'" + monTableau[i][1] + "\'."); } }
Cordialement,
Dan
decidement je m'exprime comme un pied, c'est un tableau ayant des valeur en char et les indices sont en int.
du style Montableau [0][0] = ' a';
[1][0] = ' b';
donc ma methode doit etre capable si on me donne le char 'a' , de retourner les indices [i][j] correspondant .
je vous remercie de la peine que vous vous donnez.
cordialement
du style Montableau [0][0] = ' a';
[1][0] = ' b';
donc ma methode doit etre capable si on me donne le char 'a' , de retourner les indices [i][j] correspondant .
je vous remercie de la peine que vous vous donnez.
cordialement
Utilisateur anonyme
28 mai 2010 à 00:48
28 mai 2010 à 00:48
C'est ce qui est fait ici:
On peut alors dire que pour la dimension 1 le char 'r' a pour indices [i1][j1]:
int i1 = i; // toujours i de la boucle
int j1 = 0; // toujours 0 puisque dimension 1
et pour le caractère dimension 2 [i2][j2]:
int i2 = i; // toujours i de la boucle
int j2 = 1; // toujours 1 puisque dimension 2
il suffit donc que la méthode retourne i1 et on en déduit les 3 autres indices (j1, i2 et j2)
Céation du tableau au niveau classe principale (qu'on nomme à tort variable globale: c'est mieux de dire variable (ou champs) de classe
La méthode que je propose:
Et l'appel de cette méthode depuis la méthode main de la classe pour tester:
Cordialement,
Dan
.............. if(strLu.equals(strAtrouver)) { System.out.println("Le char \'r\' se trouve en [i][0] soit: [" + i + "][0] (dimension 1)"); System.out.println("Le char se trouvant en [i][1] soit [" + i + "][1] (dimension 2) est " + "\'" + monTableau[i][1] + "\'."); }
On peut alors dire que pour la dimension 1 le char 'r' a pour indices [i1][j1]:
int i1 = i; // toujours i de la boucle
int j1 = 0; // toujours 0 puisque dimension 1
et pour le caractère dimension 2 [i2][j2]:
int i2 = i; // toujours i de la boucle
int j2 = 1; // toujours 1 puisque dimension 2
il suffit donc que la méthode retourne i1 et on en déduit les 3 autres indices (j1, i2 et j2)
Céation du tableau au niveau classe principale (qu'on nomme à tort variable globale: c'est mieux de dire variable (ou champs) de classe
private static char[][] monTableau = { {'a', 'z'}, {'b', 'y'}, {'c', 'x'}, {'d', 'w'}, {'e', 'v'}, {'f', 'u'}, {'g', 't'}, {'h', 's'}, {'i', 'r'}, {'j', 'q'}, {'k', 'p'}, {'l', 'o'}, {'m', 'n'}, {'n', 'm'}, {'o', 'l'}, {'p', 'k'}, {'q', 'j'}, {'r', 'i'}, {'s', 'h'}, {'t', 'g'}, {'u', 'f'}, {'v', 'e'}, {'w', 'd'}, {'x', 'c'}, {'y', 'b'}, {'z', 'a'}, };
La méthode que je propose:
public static int retourIndice1(char ch) { int i = 0; String strAtrouver = "" + ch; // conversion en String System.out.println("\nNous voulons savoir ou se trouve le char \'r\' (dimension 1):\n"); for(i = 0; i < monTableau.length; i++) { char chLu = monTableau[i][0]; String strLu = "" + chLu; // conversion en String if(strLu.equals(strAtrouver)) { System.out.println("Le char \'r\' se trouve en [i][0] soit: [" + i + "][0] (dimension 1)"); break; } } int i1 = i; return i1; }
Et l'appel de cette méthode depuis la méthode main de la classe pour tester:
char chAtrouver = 'r'; // appel méthode: retournant i1 int i1 = retourIndice1(chAtrouver); // on en déduit les 3 autres indices (j1, i2, j2) int j1 = 0; int i2 = i1; int j2 = 1; System.out.println("\nLES 4 INDICES:\n"); System.out.println("i1 = " + i1 + "\nj1 = " + 0 + "\ni2 = " + i2 + "\nj2 = " + 1);
Cordialement,
Dan
26 mai 2010 à 22:12