Impirmir String em uma matriz

6 respostas
L

Ola pessoal,

tenho q resolver um problema considerado simples, porem naum estou conseguindo… preciso criar uma matriz 4x4 e q cada uma dessas tivessem uma string coma a de um nome…

Ex: [0] = joao
[ 1] = antoni
.
.
.
e queria q isso fosse impresso na tela!!

por favor me ajudem… tks

6 Respostas

Jair_Rillo_Junior

Nao entendi a dúvida, mas uma Matriz em Java nada mais é que uma Array dentro de outra array, por exemplo

String minhaArray[4][4] = new String();

E para acessar os elementos você deve usar os 2 indices

minhaArray[0][0] = "Joao";
minhaArray[0][1] = "Maria";
//assim por diante
L

este eh o codigo…

public class Teste1

{

public static void main(String[] args)

{

String [][] x = new String [2][];

x[0][0] = Joao;

x[0][1] = Maria;
for(int i = 0; i < x.length; i++)
     {
          for(int j = 0; j < x[i].length; j++)
              System.out.print("*" );
          System.out.println();
     }
 }

}

Agora como faço para imprimir esses valores… e tbm estou tentando rodar e ele esta dando este erro.

Exception in thread “main” java.lang.NullPointerException
at Teste1.main(Teste1.java:6)
vlw

jPscoralicK

Ae kra, fiz um código aqui que funcionou, dê uma olhada:

public class tEST {
	public static void main(String[] args) {
		
	String[][] matriz = new String[4][4];
	matriz[0][0] = "João"; // elemento na primeira linha da primeira coluna
	matriz[1][0] = "Antônio"; // elemento na segunda linha da primeira coluna
	matriz[3][2] = "Tibúrcio"; // elemento na terceira linha da segunda coluna OBS: belo nome, hehehe
	String a = matriz[0][0];
	String b = matriz[1][0];
	String c = matriz[3][2];
	System.out.println("Nome: "+a);
	System.out.println("Nome: "+b);
	System.out.println("Nome: "+c);
	}	
}

[]s

jPscoralicK

Testei aqui mais uma vez. Agora consegui realmente.

Observe o código:

public class Teste {
	public static void main(String[] args) {

		String[][] matriz = new String[2][2];
		matriz[0][0] = "João"; 
		matriz[1][0] = "Antônio"; 
		matriz[0][1] = "Tibúrcio"; 
		matriz[1][1] = "Zé"; 
		for (int i = 0; i &lt matriz.length; i++) {
			for (int j = 0; j &lt matriz[i].length; j++) {
				System.out.println(matriz[i][j]);

			}

		}
	
	}
}

Criei uma matriz 2x2 e a preenchi por completo. Por isso, o saída foi a seguinte:

João
Tibúrcio
Antônio

Caso alguma posição da matriz não tivesse sido preenchida, o retorno seria null.

Mas, voltando ao seu código, acredito que o erro está no fato de sua matriz ter sido inicializada como

String [][] x = new String [2][];

ou seja, não há valor para a coluna. Testei seu código com a coluna recebendo o valor 2 e rodou perfeitamente.

Qualquer coisa falaí!

[]s

Jair_Rillo_Junior

ldsk8:
este eh o codigo…

public class Teste1

{

public static void main(String[] args)

{

String [][] x = new String [2][];

x[0][0] = Joao;

x[0][1] = Maria;
for(int i = 0; i < x.length; i++)
     {
          for(int j = 0; j < x[i].length; j++)
              System.out.print("*" );
          System.out.println();
     }
 }

}

Agora como faço para imprimir esses valores… e tbm estou tentando rodar e ele esta dando este erro.

Exception in thread “main” java.lang.NullPointerException
at Teste1.main(Teste1.java:6)
vlw

A exception ocorre pq você não criou a “matriz” corretamente. Repare na linha

String [][] x = new String [2][];

você não definiu o tamanho da array interna, apenas a array externa ([2]), então quando você tenta acessar o elemento x[0][0] = “Joao”; certamente você terá exception

rissato

e por q dentro do seu loop nao tem um println(x[i][j]) ???

Criado 10 de maio de 2007
Ultima resposta 10 de mai. de 2007
Respostas 6
Participantes 4