allora intanto ecco la classe cella, che poi non fa niente di speciale, rappresenta una cella con un valore e uno stato
Codice PHP:
package util;

public class 
Cella{

    public 
enum Stato{
        
IMPOSTATOASSEGNATONON_ASSEGNATO
    
}

    private 
int val;
    private 
Stato state;

    public 
Cella(){
        
this(0Stato.NON_ASSEGNATO);
    }
// costruttore default

    
public Cella(int val){
        
this(valnull);
    }
// costruttore di base

    
public Cella(int valStato state){
        if(
val || val 9)
            throw new 
IllegalArgumentException();
        
this.val val;
        
this.state state;
    }
// costruttore normale

    
public Cella(Cella c){
        
this.val c.getVal();
        
this.state c.getState();
    }
// costruttore copia

    
public int getVal(){
        return 
val;
    }

    public 
void setVal(int val){
        if(
val || val 9)
            throw new 
IllegalArgumentException();
        
this.val val;
    }

    public 
Stato getState(){
        return 
state;
    }

    public 
void setState(Stato state){
        
this.state state;
    }

    public 
String toString(){
        return 
String.valueOf(val);
    }

ma sul file che gere di informazioni devo scrivere?
p.s.: comunque nell'algoritmo non c'è nessun assegnamento a null o qualcosa del genere, per questo non so proprio cosa andare a cercare...