Sets e Gets em vetor de 2 dimensões -- dúvidas

0 respostas
C

Olá a todos, estou com o seguinte problema, eu queria usar o método set pra “setar” um valor numa posição de um vetor bidimensional, mas eu não como, ou melhor, quais os argumentos eu eu uso.

Segue abaixo os códigos:

/*
 * Ambiente.java
 *
 * Created on 11 de Setembro de 2006, 20:07
 */

package ambiente;

import aspirador.Aspirador;
import java.util.Random;

/**
 * @author Fábio Curtis Volpe
 */
public class Ambiente {
    
    public Ambiente() {
        setN(8);
        setQuadrado(new int[getN()][getN()]);
        ambienteOk();
    }
    
   /* método responsável pela inicialização inicial e final do ambiente para o
    * aspirador
    */
    private void ambienteOk() {
        
        for(setI(0); getI()<getN(); setI(getI() + 1)) {
            for (setJ(0); getJ()<getN(); setJ(getJ() + 1)) {
                getQuadrado()[getI()][getJ()] = 0; // ambiente inicialmente/finalmente limpo
            }
        }
        
        setStatus(true); // ambiente limpo por completo
        exibirAmbiente();
    }
    
    
       /*
        * 0 --> limpo
        * 1 --> sujeira
        * 2 --> sujeita + móvel
        * 3 --> movel
        */
    private void inicializoAmbiente() {
        
        setStatus(false); // ambiente total está sujo
        Random randomNumbers = new Random(); // gerador de números aleatórios
        
        // inicializo a sujeira de forma random
        for(setI(0); getI()<getN(); setI(getI() + 1)) {
            for (setJ(0); getJ()<getN(); setJ(getJ() + 1)) {
                // seleciona um inteiro de 0 a 3
                getQuadrado()[getI()][getJ()] = 0 + randomNumbers.nextInt(3);
            }
        }
        
        exibirAmbiente();              
    }
    
    
    private void exibirAmbiente() {
        
        if (isStatus() == true) {
            
            System.out.println("Ambiente Limpo e Sem Mobilhas ...");
            System.out.printf("\n");
            
            for(setI(0); getI()<getN(); setI(getI() + 1)) {
                for (setJ(0); getJ()<getN(); setJ(getJ() + 1)) {
                    System.out.printf("%2d",getQuadrado()[getI()][getJ()]);
                }
                System.out.printf("\n");
            }
            System.out.printf("\n");
            
            inicializoAmbiente(); // ambiente acabou de ficar sujo, inicializo a sujeita
            
        } else {
            System.out.println("Ambiente Sujo e com Mobilhas...");
            System.out.printf("\n");
            
            for(setI(0); getI()<getN(); setI(getI() + 1)) {
                for (setJ(0); getJ()<getN(); setJ(getJ() + 1)) {
                    System.out.printf("%2d",getQuadrado()[getI()][getJ()]);
                }
                System.out.printf("\n");
            }
        }
    }
    
    public int getN() {
        return n;
    }
    
    public void setN(int n) {
        this.n = n;
    }
    
    public int[][] getQuadrado() {
        return quadrado;
    }
    
    public void setQuadrado(int[][] quadrado) {
        this.quadrado = quadrado;
    }
    
    public boolean isStatus() {
        return status;
    }
    
    public void setStatus(boolean status) {
        this.status = status;
    }
    
    public int getI() {
        return i;
    }
    
    public void setI(int i) {
        this.i = i;
    }
    
    public int getJ() {
        return j;
    }
    
    public void setJ(int j) {
        this.j = j;
    }
    
    private int i,j;
    private int n; // índice da matriz quadrado
    private int[][] quadrado; // área do ambiente
    private boolean status; // ambiente limpo por completo - true -> limpo  false -> sujo
    
}




/*
 * Aspirador.java
 *
 * Created on 12 de Setembro de 2006, 15:00
 */

package aspirador;

import ambiente.Ambiente;
import java.util.Random;

/**
 * @author Fábio Curtis Volpe
 */
public class Aspirador {
    
    // classe responsável pela inicialização do ambiente
    Ambiente ambiente = new Ambiente();
    
    
    
    public Aspirador() {        
        pInicial();              
    }

    private void pInicial() {
        
        System.out.printf("\n");
        System.out.printf("Posição Inicial Aspirador");
        System.out.printf("\n");
        
        /*
         * inicializo o aspirador numa posição randômica 
         * 4 --> aspirador
         */         
        Random randomNumbers = new Random(); // gerador de números aleatórios para a Linha
        
        linha = 0 + randomNumbers.nextInt(ambiente.getN()); // 0 até n
        coluna = 0 + randomNumbers.nextInt(ambiente.getN()); // o até n
        
        ambiente.setQuadrado();

    }
    
    private int[][] pXy; // posição do aspirador no ambiente
    private int linha;
    private int coluna;
    
}

No ambiente.setQuadrado(); eu queria passar para a posição da linha e coluna o valor 4 para o quadrado do Ambiente.java.

Muito obrigado

Fábio

Criado 12 de setembro de 2006
Respostas 0
Participantes 1