Gente travei na parte do sexo, não consigo fazer repetir a pergunta pro usuario digitar novamente se o usuário digitar um valor q seja diferente de F ou M … gostaria de uma ajuda usando o while pq repete enquanto digitar errado…com o if else ele so pergunta uma vez e encerra.
public class exercicio03 {
public static void main(String[] args) {
Scanner scan=new Scanner( System.in);
// Faça um programa que leia e valide as seguintes informações: a. Nome: maior que 3 caracteres;
//b. Idade: entre 0 e 150; c. Salário: maior que zero; d. Sexo: 'f' ou 'm'; e. Estado Civil: 's', 'c', 'v', 'd'
String nome,sexo,estadoCivil;
int idade;
double salario;
System.out.println("Informe seu nome :");
nome=scan.next();
while(nome.length()<3) { //lenght é tamanho
System.out.println("Nome muito pequeno. Informe seu nome again:");
nome=scan.next();
}
System.out.println("Informe sua idade entre 0-100 :");
idade=scan.nextInt();
while(idade<0 || idade>150) {
System.out.println("Error!Informe sua idade novamente :");
idade=scan.nextInt();
}
System.out.println("Informe seu salario:");
salario=scan.nextDouble();
while (salario<0) {
System.out.println(" salario precisa ser maior q zero! tente novamente:");
salario=scan.nextDouble();
}
System.out.println(" Informe seu sexo: F -- M ");
sexo=scan.next();
/*while (sexo!="f" && sexo!="m"){
System.out.println("Sexo inválido, digite again");
sexo=scan.next();
}*/
if(sexo.equalsIgnoreCase("f")|| sexo.equalsIgnoreCase("m")) {
}else {
System.out.println("Sexo inválido, digite again");
sexo=scan.next();
}
System.out.println("Seu nome é : " +nome);
System.out.println(" sua idade :" +idade);
System.out.println("Seu salario é : " +salario);
System.out.println("Seu sexo é : " +sexo);
// System.out.println("Seu estado civil é : " +estadoCivil);
}
}