Como criar Matriz com Get and Set?

16/03/2017

0

Pessoal, criei uma matriz e coloquei para ela inicializar com os valores passados no construtor, porem ela não está inicializando. Alguem pode me ajudar?

import java.util.Scanner;

public class ExerMatriz {
Scanner s = new Scanner(System.in);

private int linha;
private int coluna;

ExerMatriz(){
System.out.println("Digite a quantidade de linhas");
this.setLinha(s.nextInt());
System.out.println("Digite a quantidade de colunas");
this.setColuna(s.nextInt());

}


private int m[][] = new int[this.getLinha()][this.getColuna()];

public void mostrarMatriz(){
for(int i=0; i< m.length;i++){
for(int j=0; j<m[0].length;j++){
System.out.print(this.m[i][j]);
}
System.out.println();
}
}


public int[][] getM() {
return m;
}

public void setM(int[][] m) {
this.m = m;
}
public int getLinha() {
return linha;
}

public void setLinha(int linha) {
this.linha = linha;
}

public int getColuna() {
return coluna;
}

public void setColuna(int coluna) {
this.coluna = coluna;
}
}
Thun An

Thun An

Responder

Posts

17/03/2017

Angelo Santos

Thun An, Boa Tarde !

Então, analisando seu código verifiquei a necessidade de fazer algumas correções. Espero que seja o que está precisando. Segue abaixo código.

public class ExerMatriz {
	
	private int linha;
	private int coluna;	
	private int[][] matriz;

	public ExerMatriz(int linha, int coluna) {
		this.linha = linha;
		this.coluna = coluna;	
		
		this.matriz = new int[this.getLinha()][this.getColuna()];			
		this.setMatriz(matriz);
	}	
	
	public int getLinha() {
		return linha;
	}

	public void setLinha(int linha) {
		this.linha = linha;
	}

	public int getColuna() {
		return coluna;
	}

	public void setColuna(int coluna) {
		this.coluna = coluna;
	}
		
	public int[][] getMatriz() {
		return matriz;
	}

	public void setMatriz(int[][] matriz) {
		this.matriz = matriz;
	}

	public void mostrarMatriz() {				
		for (int i = 0; i < this.getMatriz().length; i++) {
			for (int j = 0; j < this.getMatriz()[0].length; j++) {
				System.out.print(this.getMatriz()[i][j]);
			}
			System.out.println();
		}
	}
	
}


E para testar você utiliza uma outra classe com o método Main:

import java.util.Scanner;

public class ExerMatrizTeste {

	public static void main(String[] args) {
		
		Scanner s = new Scanner(System.in);
		int linha = 0;
		int coluna = 0;
			
		System.out.println("Digite a quantidade de linhas");				
		linha = s.nextInt();
		System.out.println("Digite a quantidade de colunas");
		coluna = s.nextInt();
		
		s.close();
		
		ExerMatriz ex = new ExerMatriz(linha, coluna);		
		ex.mostrarMatriz();
					
	}

}


Espero ter te ajudado. Bom estudos !
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar