Olá a todos.
Gostaria de saber se é possível imprimir os dados que eu armazenei no meu array usando o JOptionPane.
O código deve ficar no " if (escolha == 2) { ".
Desde já agradeço!
[code]String filmes[] = new String[50];
int escolha, escolha2;
escolha = Integer.parseInt(JOptionPane.showInputDialog(""
+ "1 - Adicionar filme.\n"
+ "2 - Ver filmes cadastrado.\n"
+ "3 - Sair. \n"));
if (escolha == 1) {
for (int i = 0; i < 50; i++) {
filmes[i] = JOptionPane.showInputDialog(null,
"Informe o filme: ");
JOptionPane.showMessageDialog(null, "O filme foi cadastrado: "
+ filmes[i]);
escolha2 = JOptionPane.showConfirmDialog(null,
"Gostaria de adicionar outro filme?", "Atencao",
JOptionPane.YES_NO_OPTION);
if (escolha2 == 1) {
System.exit(0);
}
}
if (escolha == 2) {
JOptionPane.showMessageDialog
} else
System.exit(0);
}
}
da sim… mais vc tem que saber que o JoptionPane deve ser exibido no final… nao acada interação da lista… vc so precisa pega as informações e armazenar em algum lugar com o formato de string e pedir para exibir no JOptionPane
Sua execução ficou confusa. Fiz uma reorganização na organização do laço, veja:
[code]
String filmes[] = new String[50];
int escolha = 0, escolha2 = 0;
for (int i = 0; i < 50; i++) {
escolha = Integer.parseInt(JOptionPane.showInputDialog(""
+ "1 - Adicionar filme.\n"
+ "2 - Ver filmes cadastrado.\n"
+ "3 - Sair. \n"));
if (escolha == 1) {
filmes[i] = JOptionPane.showInputDialog(null,
"Informe o filme: ");
JOptionPane.showMessageDialog(null, "O filme foi cadastrado: "
+ filmes[i]);
}
if(escolha==2){
String saida="";
for(int j=0;j<i;j++){
if(filmes[j]!=null){
saida+=filmes[j]+"\n";
}
}
JOptionPane.showMessageDialog(null,saida);
}
if(escolha==3){
System.exit(0);
}
}[/code]
Nas linhas 17 a 28 você verá como exibir a lista de filmes:
if(escolha==2){
String saida=""; //para armazenar os filmes
for(int j=0;j<i;j++){ //percorro de zero até o índice i
if(filmes[j]!=null){ //verifico se esta posição contém algo diferente de nulo
saida+=filmes[j]+"\n"; //passo o filme da posição j dentro da string saida.
}
}
JOptionPane.showMessageDialog(null,saida); //imprimo saida com o JOptionPane.
}
O código ainda pode ser muito melhorado( principalmente em termos de otimização), mas resolvi pegar o que você já fez para facilitar seu raciocínio.