Partage
  • Partager sur Facebook
  • Partager sur Twitter

Probleme Tableau de classe a 2 dimensions

Sujet résolu
    23 octobre 2010 à 16:09:30

    Bonjour,
    Je code un petit jeu en Java et je bloque sur ce probleme : J'ai un tableau de classe a 2 dimensions et j'essaye de le remplir mais il me met plusieurs messages d'erreur.
    Je vais vous montrer mon code :

    Classe Environnement

    import java.util.Scanner;
    
    
    public class Environnement {
    	/* Declaration Variables */
    	private int haut;
    	private int larg;
    	private Cellule tabjeu [][];
    	
    	/* Constructeur */
    	public Environnement(){
    		this.saisirCoordonnees();
    		this.creationTableau();
    	}
    	
    	public void saisirCoordonnees(){
    		Scanner scan = new Scanner(System.in) ;
    
    		System.out.println("Saisissez la hauteur : ") ;
    		this.haut = scan.nextInt() ;
    		
    		System.out.println("Saisissez la largeur : ") ;
    		this.larg = scan.nextInt() ;
    	}
    	
    	
    
    	public void creationTableau(){
    		
    		
    		for(int i=0; i<this.haut; i++)
    		{
    			for(int j=0; j<this.larg; j++)
    			{
    				System.out.println("hauteur : " + this.haut) ;
    				System.out.println("largeur : " + this.larg) ;
    				
    				this.tabjeu[i][j] = new Cellule();  <couleur nom="rouge">/* PROBLEME ICI */</couleur>
    			}
    		}
    	}
    	
    	public static void main(String[] args){
    		new Environnement();
    	}
    }
    


    Message d'erreur a la compilation :
    Exception in thread "main" java.lang.NullPointerException
    at Environnement.creationTableau(Environnement.java:38)
    at Environnement.<init>(Environnement.java:13)
    at Environnement.main(Environnement.java:44)

    Je vous met en rouge le bout de code que je pense être concerné

    Classe Cellule

    import java.util.Random;
    
    
    public class Cellule {
    	/* Declaration Variables */
    	private boolean etat;
    	private Random generator = new Random();
    	
    	
    	
    	/* Constructeur*/
    	public Cellule(){
    		boolean b = this.generator.nextBoolean();
    		this.etat = b;
    	}
    }
    


    Merci d'avance pour votre aide, n'hesitez pas a me demander des details et a me poser des questions sur le code
    • Partager sur Facebook
    • Partager sur Twitter
      23 octobre 2010 à 16:17:14

      Tu ne crées jamais ton tableau. Au début de ta méthode creationTableau(), tu dois le créer avec :
      this.tabjeu = new Cellule[this.haut][this.larg];
      • Partager sur Facebook
      • Partager sur Twitter
        23 octobre 2010 à 17:00:25

        Merci Ilod sa fonctionne parfaitement :) et dire que j'ai cherché le probleme pendant 40 minutes ><
        • Partager sur Facebook
        • Partager sur Twitter

        Probleme Tableau de classe a 2 dimensions

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown