Saudações.
Estou tentando fazer o seguinte programinha.
import java.util.*;
public class ParaSeQuiser {
public static void main(String[] args) {
Scanner entrada = new Scanner(System.in);
char resposta = 'n';
while(resposta != 's') {
System.out.println("Deseja parar ? (s/n)");
resposta = (char) entrada.next();
}
}
}
Isso naum funciona, da o seguinte erro:
:inconvertible types
Alguma sugestao, de como fazer esse simples programinha ?. Lembrando que ja usei BufferedReader com System.in.read(), mas esse repete 3 vezes o while quando escolho ‘n’.
Olá
Seu erro está dizendo que você está tentando converter tipos que não são conversíveis.
E realmente não são. Olhando a API do Scanner:
http://java.sun.com/j2se/1.5.0/docs/api/java/util/Scanner.html
Você vê que o método next() retorna uma String, e não um char.
Uma possível solução do seu programa seria:
import java.util.*;
public class ParaSeQuiser {
public static void main(String[] args) {
Scanner entrada = new Scanner(System.in);
String resposta = "n";
while(!resposta.equals("s") {
System.out.println("Deseja parar ? (s/n)");
resposta = entrada.next();
}
}
}
Ve se isto te satisfaz…
[code] Scanner entrada = new Scanner(System.in);
char resposta = 'n';
while(resposta != 's') {
System.out.println("Deseja parar ? (s/n)");
resposta = entrada.next().charAt(0);
} [/code]