[RESOLVIDO]Formatação De Matriz Usando JOptionPane

7 respostas
Z

[/img]

Uploaded with ImageShack.us
Ola Pessoal do GUJ,

Estou com uma duvida nesse exercício que estou fazendo, faço tudo certo, só que na hora da formatação , nao consigo
fazer a formatação usando JOptionPane para sair da forma como está na imagem que a seta vermelha está apontando ! !
A formatação sai

123123123

Quero fazer do jeito da imagem que a seta está apontando, ou algo parecido com aquilo ali, para o usuario ter uma ideia que si trata
de uma matriz, mostrando índice de cada linha e elementos !

Obrigado

7 Respostas

ViniGodoy

Use html:

StringBuilder saida = new StringBuilder("<html><body>"); for (int[] linha : matriz) { for (int valor : linha) { saida.append(valor).append(" "); } saida.append("<br>"); } JOptionPane.showInputDialog(null, saida.toString());

DZR

Bem,

Não sei se o que o Vini fez funciona. Provavelmente sim.

A minha idéia de solução seria montar, na sua String imprime, a sua formatação. Faria mais ou menos assim:

//resto do código
String imprime = "";
public static void exibeMatriz(int matriz[][]){

     for (int linha = 0; linha<matriz.length; linha++)
     {
          imprime = "Indice "+linha+" ";

          for (int coluna = 0; coluna<matriz[linha].length; coluna++)
          {

               imprime = imprime + "|"+matriz[linha][coluna]+"| "; 

          }
          imprime += "\n"; //Aqui é a mesma coisa de ter escrito imprime = imprime + "\n";
     }

Como você postou uma figura e não o seu código, digitei tudo. Então é capaz de ter algum erro no digitar daí de cima. E eu também não vi na figura a sua impressão em JOptionPane…
O que fiz foi simplismente inserir quebra de linha na sua String (com o \n dentro da String) e ir formatando a sua String, conforme a sua saída.

Espero ter ajudado.

Z

DZR:
Bem,

Não sei se o que o Vini fez funciona. Provavelmente sim.

A minha idéia de solução seria montar, na sua String imprime, a sua formatação. Faria mais ou menos assim:

//resto do código
String imprime = "";
public static void exibeMatriz(int matriz[][]){

     for (int linha = 0; linha<matriz.length; linha++)
     {
          imprime = "Indice "+linha+" ";

          for (int coluna = 0; coluna<matriz[linha].length; coluna++)
          {

               imprime = imprime + "|"+matriz[linha][coluna]+"| "; 

          }
          imprime += "\n"; //Aqui é a mesma coisa de ter escrito imprime = imprime + "\n";
     }

Como você postou uma figura e não o seu código, digitei tudo. Então é capaz de ter algum erro no digitar daí de cima. E eu também não vi na figura a sua impressão em JOptionPane…
O que fiz foi simplismente inserir quebra de linha na sua String (com o \n dentro da String) e ir formatando a sua String, conforme a sua saída.

Espero ter ajudado.

O mano é isso ae mesmo, me ajudou muito, vocês aqui do site GUJ, são nota 1.00000.

Tipo, eu tou estudando tanto conteudo acumulado, que estou ficando sequelado da mente kkk

Pessoal ajuda pacas mesmo !!!

Continuem assim… ajudando quando alguem precisa… ^^

Site PERFECT…

valeu abraço

Z

ViniGodoy:
Use html:

StringBuilder saida = new StringBuilder("<html><body>"); for (int[] linha : matriz) { for (int valor : linha) { saida.append(valor).append(" "); } saida.append("<br>"); } JOptionPane.showInputDialog(null, saida.toString());

Valeu pela ajuda ViniGodoy, só que tipo, não entendi seu codigo porque eu estou iniciando, sou leigo leigo.

Mas tipo, site aqui é muito bom mano, voçê pergunta, e tem a resposta rapidão!!!

PARABÈNS ao GUJ, e aos colegas que sempre etão ajudando…
:smiley:

DZR

Ótimo jovem!

Foi bom ter ajudado. E obrigado pelos elogios.
Agora edite o seu post e coloque [RESOLVIDO] nele.

VLW

israel_ruas

As duas teorias funcionam perfeitamente, porém em questão de desempenho, o algoritmo do ViniGodoy é bem mais rápido. Consegue ser gritante a diferença.

ViniGodoy

Viu só? E a diferença não mudou de 2011 até hoje.

PS: Não ressuscite tópicos muito antigos à toa.

Criado 24 de maio de 2011
Ultima resposta 18 de ago. de 2015
Respostas 7
Participantes 4