Le main
- Code: Tout sélectionner
Intersection tab[]=new Intersection[4];
tab=i[0].getIntersectionClose(g);
for(Intersection iTest:tab){
System.out.print(iTest.getNumIntersection(g)+" ");
}
Et la fonction du get
- Code: Tout sélectionner
public Intersection[] getIntersectionClose(Goban g){
//4 car nombre d'intersection proche maximum; peu importe la taille du goban
Intersection tab[]=new Intersection[4];
int k=0;
for(int currentRow=0;currentRow<g.getSize();currentRow++) {
for(int currentColumn=0;currentColumn<g.getSize();currentColumn++) {
Intersection i=new Intersection(currentRow,currentColumn);
if(this.isIntersectionClose(i, g)) {
tab[k]=i;
k++;
}
}
}
return tab;
}
Quand j'exécute mon main, il me retourne ce résultat
1 9 Exception in thread "main" java.lang.NullPointerException
at Goban.main(Goban.java:90)
Donc j'ai bien mes intersections proche de l'intersection 0...mais je prends quand même une erreur de pointeur null derrière ! A quoi cela peut il être dû ?
En fait la raison je la connais c'est parce que dans certains cas ma taille est inférieure à 4.
Mais pourtant je pensais qu'en faisant un foreach sur mon tab il ne parcourait que la taille effective du tableau...
