Transfert d'une matrice vers hashSet
firas scofield
Messages postés
19
Statut
Membre
-
josaphat_mayuba Messages postés 17 Statut Membre -
josaphat_mayuba Messages postés 17 Statut Membre -
Bonjour, j'ai une classe "grille_chiffre" qui rempli une matrice par des valeurs aléatoire , ensuite dans la classe fille "urne" je doit transférer les valeurs de la matrice dans une hashSet donc j'ai besoin de faire appel à super.initialiser(). le problème et quand j' afficher la matrice via la classe grille w le hashSet via la classe urne il ne sont pas identiques et je trouve des valeurs différents.
voila le contenu des deux classes:
Main
voila le contenu des deux classes:
import java.util.*;
public class grille_chiffre {
protected Object[][] gc;
public grille_chiffre(){
gc=new Object[5][5];
}
public Object[][] getGc() {
return gc;
}
public void setGc(Object[][] gc) {
this.gc = gc;
}
public void initialiser(){
int nb;
double nbd;
for(int i=0;i<5;i++)
for(int j=0;j<5;j++){
do{
nbd=Math.random()*(100-0);
nb=(int)nbd;
}while(existe(nb));
gc[i][j]=nb;
}
}
public boolean existe(Object x){
int i=0;
boolean trouve=false;
while(i<5 && !trouve){
int j=0;
while(j<5 && !trouve){
if(gc[i][j]==x)
trouve=true;
else j++;
}
i++;
}
return trouve;
}
public void affichage(){
for(int i=0;i<5;i++){
for(int j=0;j<5;j++){
System.out.print(gc[i][j]+" ");
}
System.out.println();
}
}
}
import java.util.*;
public class urne2 extends grille_chiffre{
private HashSet<Object> ur;
public urne2(){
ur=new HashSet<Object>();
}
public void initialiser(){
super.initialiser();
for(int i=0;i<5;i++)
for(int j=0;j<5;j++){
ur.add(super.getGc()[i][j]);
}
System.out.println();
}
public void affichage(){
Object[]e=ur.toArray();
for(int i=0;i<e.length;i++)
System.out.print(e[i]+" ");
}
}
Main
grille_chiffre g=new grille_chiffre();
urne2 ur=new urne2();
g.initialiser();
g.affichage();
System.out.println("Urne");
ur.initialiser();
ur.affichage();
| EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici : ICI Merci d'y penser dans tes prochains messages. |
A voir également:
- Transfert d'une matrice vers hashSet
- Vinted transfert vers compte bancaire - Guide
- Whatsapp transfert discussion - Accueil - WhatsApp
- Transfert fichier pc vers android sans câble - Guide
- Windows 7 vers windows 10 - Accueil - Mise à jour
- Transfert photos messenger vers galerie ✓ - Forum Téléphones & tablettes Android
2 réponses
Salut,
Si tu crées une instance de
Si tu crées une instance de
grille_chiffre, elle n'a rien à voir avec
urne2même si elle est fille de
grille_chiffre(l'instanciation de
urne2créé une nouvelle instance de
grille_chiffre)
salut, je vois que tu réinitialise le tableau qui crée un nouveau tableau avec des contenus différents vu c'est du random. tu peux appelé grille_chiffre directement
import java.util.*;
public class urne2 {
protected Object[][] gc;
public urne2() {
super();
}
public Object[][] getGc() {
return gc;
}
public void setGc(Object[][] gc) {
this.gc = gc;
}
public void affichage() {
for (int i = 0; i < 5; i++) {
for (int j = 0; j < 5; j++) {
System.out.print(getGc()[i][j] + " ");
}
System.out.println();
}
}
}