Ir ao conteúdo
  • Cadastre-se
Antoniorr

Algoritmo de perguntas, mas com respostas do tipo string pelo teclado no java

Recommended Posts

Olá a todos, gostaria de uma ajuda para concluir esse código abaixo. Não sei onde está o erro.
 

package teste;import java.util.ArrayList;import java.util.Collections;import java.util.List;import java.util.Random;import java.util.Scanner;public class Teste {private static final int LIMITE = 3;private static final int QUANT = 3;String resp;public static void main(String[] args) {metodo1();System.out.println();}private static void metodo1() {// 1 - Crie uma lista e insira os numeros de 1 a 20 nessa lista.List<Integer> lista = new ArrayList<Integer>();for (int i = 1; i <= LIMITE; i++) {lista.add(i);}// 2 - Sorteie um numero entre a primeira e a ultima posição da lista.Random random = new Random();for (int i = 0; i < QUANT; i++) { // 4 - repita os passos 2 e 3 19 vezesint max = lista.size();int indice = random.nextInt(max);// 3 - Remova o numero daquela posição, esse é o seu numero sorteado// ou outra operação conforme necessárioint valor = lista.remove(indice);if (valor == 1){pergunta1();}if (valor == 2){pergunta2();}if (valor == 3){pergunta3();}// 4 - repita os passos 2 e 3 50 vezes, como voce sempre remove o numero sorteado, não tem como repetir o valor sorteado.}}public static void pergunta1(){Scanner ler = new Scanner();System.out.println("Quanto é um + um?");resp = ler.nextLine();if (resp == "dois"){System.out.println("Correto");}else{System.out.println("Errado");}}}

Acredito que haver com a classe Scanner. Estou tentando implementar um código que faz uma pergunta aleatória e recebe como resposta do tipo string e diga se está errado ou certo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

sem testar, o primeiro ponto que peguei foi nessa linha:

if (resp == "dois"){

para comparação de Strings, utilize o método "equals" ou "equalsIgnoreCase" caso não queira diferenciação entre maiúsculas e minúsculas ... procure no Javadoc String que vai ter a descrição do método.

 

...

 

Uma dica. Se você já está utilizando Collections (List, Map, Set), vale mais a pena utilizar um método mais generalizado, que você possa passar a pergunta e a resposta como parâmetro, ao invés de um método para cada questão ;) ...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×