Verificação ao digitar algo

Estou lendo algumas strings dentro de um while e quero que ao digitar 0, a executação seja finalizada, ou seja, pode ser que não seja executado nenhuma vez. Testei da seguinte maneira:

import java.util.Scanner;

public class teste {
	public static void main(String args[]) {
		String sexo, resposta;
		int contSexo = 0;
		int contResposta = 0;
		int sair;
		Scanner ler = new Scanner(System.in);
		sair=ler.nextInt();
		
		while(sair != 0) {
			
		
			System.out.println("Qual seu sexo?");
			sexo = ler.next();
			
			System.out.println("Gostou do produto?");
			resposta = ler.next();
			
			if (resposta.equals('s')) {
				if(sexo.equals('M')) {
					contSexo++;
				}
			}
		} ;
	}
}

mas está dando erro.

Alguém pode ajudar?

Obrigado!

Qual o erro?

vc nuca troca o valor da variável sair dentro do loop, assim ele nunca vai sair do while… o.O

É. Como o colega disse, você não mexe no valor da variável “sair”. Logo, a condição nunca vai ser falsa para, assim, nunca vai sair no while.

Mas eu não entendi muito bem o que você quer fazer no programa. Pra que você quer incrementar a contSexo?

Escreve a proposta do seu exercício pra ficar mais fácil entender e ajudar :slight_smile: