o loop do “Você deseja sair” fica infinito quando clico em não
package aula.pkg3.exercicio.pkg2;
import javax.swing.JOptionPane;
public class Aula3Exercicio2 {
public static void main(String[] args) {
String escolha, primeiraLetra1, ultimaLetra1, primeiraLetra2, ultimaLetra2, primeiraLetra3, ultimaLetra3;
int escolha2, dica, contadorDica, ultimoNome1, ultimoNome2, ultimoNome3, tamanhoDaPalavra1, tamanhoDaPalavra2, tamanhoDaPalavra3, resposta;
contadorDica = 0;
JOptionPane.showMessageDialog(null, "Jogador 1 ");
escolha = JOptionPane.showInputDialog("Escolha uma modalidade (Esporte, Filmes, Séries, etc...)");
if (escolha == null) {
do{
escolha2 = JOptionPane.showConfirmDialog(null, "Você deseja fechar?");
}while(escolha2 == JOptionPane.NO_OPTION);
} else if (escolha != null) {
String nome1 = JOptionPane.showInputDialog("Digite o 1º nome da categoria " + escolha);
do{
escolha2 = JOptionPane.showConfirmDialog(null, "Você deseja fechar?");
}while(escolha2 == JOptionPane.NO_OPTION);
String nome2 = JOptionPane.showInputDialog("Digite o 2º nome da categoria " + escolha);
do{
escolha2 = JOptionPane.showConfirmDialog(null, "Você deseja fechar?");
}while(escolha2 == JOptionPane.NO_OPTION);
String nome3 = JOptionPane.showInputDialog("Digite o 3º nome da categoria " + escolha);
do{
escolha2 = JOptionPane.showConfirmDialog(null, "Você deseja fechar?");
}while(escolha2 == JOptionPane.NO_OPTION);
JOptionPane.showMessageDialog(null, "Jogador 2 ");
JOptionPane.showMessageDialog(null, "A modalidade é " + escolha);
for (int i = 10; i >= 1; i--) {
String tentativa = JOptionPane.showInputDialog("Digite 3 nomes, separados por vírgula da categoria " + escolha);
do{
escolha2 = JOptionPane.showConfirmDialog(null, "Você deseja fechar?");
}while(escolha2 == JOptionPane.NO_OPTION);
/*SE ALGUMA ESTIVER CORRETA*/
if (nome1.equals(tentativa)) {
JOptionPane.showMessageDialog(null, "Correto! A resposta é " + nome1);
}
if (nome2.equals(tentativa)) {
JOptionPane.showMessageDialog(null, "Correto! A resposta é " + nome2);
}
if (nome3.equals(tentativa)) {
JOptionPane.showMessageDialog(null, "Correto! A resposta é " + nome3);
}
/*SE ACERTAR TUDO*/
if (nome1.equals(tentativa) && nome2.equals(tentativa) && nome3.equals(tentativa)) {
JOptionPane.showMessageDialog(null, "Parabéns, você acertou tudo");
}
/*DICA*/
dica = JOptionPane.showConfirmDialog(null, "Você possui " + i + " tentativas, deseja usar uma dica?", "Dica", JOptionPane.YES_NO_OPTION);
if (dica == JOptionPane.YES_OPTION) {
i = i - 1;
contadorDica += 1;
if (contadorDica == 1) {
ultimoNome1 = nome1.length();
tamanhoDaPalavra1 = ultimoNome1 - 1;
primeiraLetra1 = nome1.substring(0, 1);
ultimaLetra1 = nome1.substring(tamanhoDaPalavra1, ultimoNome1);
JOptionPane.showMessageDialog(null, "Dica do primeiro nome:\nPrimeira Letra: " + primeiraLetra1 + "\nUltima Letra: " + ultimaLetra1);
} else if (contadorDica == 2) {
ultimoNome2 = nome2.length();
tamanhoDaPalavra2 = ultimoNome2 - 1;
primeiraLetra2 = nome2.substring(0, 1);
ultimaLetra2 = nome2.substring(tamanhoDaPalavra2, ultimoNome2);
JOptionPane.showMessageDialog(null, "Dica do segundo nome:\nPrimeira Letra: " + primeiraLetra2 + "\nUltima Letra: " + ultimaLetra2);
} else if (contadorDica == 3) {
ultimoNome3 = nome3.length();
tamanhoDaPalavra3 = ultimoNome3 - 1;
primeiraLetra3 = nome3.substring(0, 1);
ultimaLetra3 = nome3.substring(tamanhoDaPalavra3, ultimoNome3);
JOptionPane.showMessageDialog(null, "Dica do terceiro nome:\nPrimeira Letra: " + primeiraLetra3 + "\nUltima Letra: " + ultimaLetra3);
}
} else {
do{
}while(escolha2 == JOptionPane.NO_OPTION);
}
}
}
}
}