Boa noite estou tendo problema criei um método com retorno para receber dados de uma matriz[12][12] ai tudo bem.
Depois criei um método para receber esse dados da matriz em outra classe,mais quando estou no método men eu chamo o método ele da erro poderia me ajudar alguém?
public class uri_1182 {
// Atributo
double[][] M = new double[12][12];
// Método para prenecher a matriz
public void imprimirMatriz(double valoresMatriz[][]){
for (int i = 0; i < M.length; i++) {
for (int j = 0; j < M[i].length; j++) {
System.out.println(M[i][j] + " ");
}
}
}
}
///////////////////////////////////////////////////////////////////////////////////////////////////
import java.util.Scanner;
public class teste_uri_1182 {
public static void main(String[] args ) {
Scanner scan = new Scanner(System.in);
uri_1182 uri = new uri_1182();
int C = 0;
String T = "";
C = scan.nextInt();// Coluna
T = scan.next();// Caracter
receberValores(scan);
uri.imprimirMatriz(valoresMatriz); <------ERRO AQUI
}
// Método para receberes para a matriz
private static double[][] receberValores(Scanner scan) {
double[][] valoresMatriz = new double[12][12];
for (int i = 0; i < valoresMatriz.length; i++) {
for (int j = 0; j < valoresMatriz.length; j++) {
valoresMatriz[i][j] = scan.nextDouble();
}
}
return valoresMatriz;
}
}
Boa noite, Vanderlei_Melo. Se você quer que um método retorne algo, especifique o que o método irá retornar e use a palavra reservada return no final do método. Além do mais, todos os valores da sua matriz não estão iniciados, você só indicou o tamanho dela, não deu valor algum para os valores dentro dela. Para isso você pode criar um método construtor para a classe. Eu chuto que a exceção que é jogada é a NullPointerException né? Depois que fizer essas alterações, se continuar dando erro, pode me falar que eu reanaliso pra ver se tem outra coisa errada. Abraços.
Bom eu tenho duas classe certo A E B na B que tenho método (man) eu criei uma MATRIZ para receber dados do TECLADO na MATRIZ recebi tudo correto deu certo.
AI na classe A criei um método para receber esse valor da outra classe, mais quando estou no método (man) e chamo esse método da esse ERRO que não sei identificar você poderia escrever para mim como deve proceder por favor…
CLASSE A
import java.util.Scanner;
public class uri_1182 {
// Atributo
double[][] M = new double[12][12];
// Método para PREENCHER a matriz
public double[][] imprimirMatriz(double[][] valoresMatriz){
for (int i = 0; i < M.length; i++) {
for (int j = 0; j < M[i].length; j++) {
System.out.println(M[i][j] + " ");
}
}
return valoresMatriz;
}
}
CLASSE B
import java.util.Scanner;
public class teste_uri_1182 {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
uri_1182 uri = new uri_1182();
int C = 0;
String T = "";
C = scan.nextInt();// Coluna
T = scan.next();// Caracter
receberValores(scan); // PARA RECEBER DADOS DO TECLADO
double[][] valorresMatriz = new double[12][12];
uri.imprimirMatriz(valoresMatriz);// ---> Esse método que está dando erro
}
// Método para receber valores para a matriz ok ok
private static double[][] receberValores(Scanner scan) {
double[][] valoresMatriz = new double[12][12];
for (int i = 0; i < valoresMatriz.length; i++) {
for (int j = 0; j < valoresMatriz.length; j++) {
valoresMatriz[i][j] = scan.nextDouble();
}
}
return valoresMatriz;
}
} ERRO QUE ESTÁ DANDO CONSOLE
Exception in thread “main” java.lang.Error: Unresolved compilation problems:
Variable must provide either dimension expressions or an array initializer
valoresMatriz cannot be resolved to a variable
at com.orientacaoobjetos.uri_1182.teste_uri_1182.main(teste_uri_1182.java:26)
beleza arrumei mais quando mando imprimir está dando tudo zero.Porque?
Estou passando o parâmetro que recebi os valores,para imprimir em outra matriz está saindo 0,0,0,0,0
Descobri o que é no método imprimir eu estava dando um nome para matriz e estava passando os dados com outro nome de outra matriz arrumei deu certo abrigado muito pela sua ajuda .