Olá, eu tô quebrando a cuca neste código.
package src;
import java.util.Scanner;
public class Exercicio14Main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
String resposta;
System.out.println("Bem-vindo/a! Você irá digitar letras, palavras ou frases e este programa irá imprimir ao contrário.");
while (true) {
resposta = scan.nextLine();
for (String part : resposta.split(" ")) {
System.out.print(new StringBuilder(part).reverse().toString());
System.out.print(" ");
}
System.out.println();
System.out.println("Digite 0 para encerrar o programa ou 1 para reiniciar:");
if (resposta.equals("0")) {
break;
}
}
}
}
Ao digitar uma frase, como 'Gato Samuel' (meu gato), ele imprime o seguinte:
Bem-vindo/a! Você irá digitar letras, palavras ou frases e este programa irá imprimir ao contrário. Gato Samuel otaG leumaS Digite 0 para encerrar o programa ou 1 para reiniciar:
Aí funciona. Mas quero digitar 0 para encerrar e 1 para reiniciar. Ao digitar 1, entra num loop infinito de continuar digitando "1". Ao digitar "0", ele repete o sysout mais uma vez, o que não deveria acontecer, e então encerra o programa.
*Digite 0 para encerrar o programa ou 1 para reiniciar: 0 0 Digite 0 para encerrar o programa ou 1 para reiniciar:
Process finished with exit code 0*
Eu quero resolver duas coisas: 1 - um return que ao digitar '1' ele repete o menu de inversão de strings; 2 - ao digitar 0, ele break o código, então parando de rodar.
Muito obrigado!