como fazer condição em arraylist?
exemplo:eu tenho varias perguntas e ela sera gerada com o sufle
e de acordo com a posição gerada no arraylist
os radiobutton muda as info!1
qual e a placa principal do pc?
opcao1
opcao2
opca3
mas eu não sei fazer a condição com arraylist
if(listadearrays.equals(0){
radiobutton.setText(“Placa mãe”);
}
como faço ?
dms775
Novembro 3, 2017, 11:27pm
#2
if(listadearrays.**get(i)**.equals(0){
radiobutton.setText("Placa mãe");
}
o .get(indice) você parra a posição do array que quer verificar, se quer verificar todos, faça um foreach. Exemplo:
if(listaDeArrays.get(0).equals(0)){
radiobutton.setText("Placa mãe");
}
Acima você está verificando a posição 0 do seu ArrayList:
get(int index)
Returns the element at the specified position in this list.
1 curtida
amanha,vou testar mt obrigado,dms775
testei, é nao deu certo
ArrayList<String> listadearrays = new ArrayList<>();
listadearrays.add("Qual a Principal Placa do Computador ?");
listadearrays.add("Qual Peça do Computador é Responsavel Por Processar dados?");
listadearrays.add("O que é HTML?");
//listadearrays.remove(0);
Collections.shuffle(listadearrays);
if(listadearrays.get(0).equals(0)){
edpergunta.setText(listadearrays.get(0));
rbtn1.setText("placa mãe");
rbtn2.setText("Placa filha");
}
dms775
Novembro 5, 2017, 4:41pm
#4
Então, é um array de String? o parâmetro do equals tem que ser “0” e não 0, qual erro que ele retorna pra você?
tentei tb como “0” , mas o ele não faz nada
eu quero que a pergunta que gerarada vai para o label
e depois disso essa pergunta e removida do arraylist
listaderrays.remove(0);
diego12
Novembro 6, 2017, 12:32pm
#6
Crie uma classe para as perguntas e respostas:
class Pergunta {
String enunciado;
String[] alternativas;
String resposta;
}
e na lista:
ArrayList<Pergunta> perguntas = new ArrayList<>();
// adiciona as perguntas aqui
Collections.shuffle(perguntas);
Pergunta p = perguntas.get(0); // ou remove(0)
edpergunta.setText(p.enunciado);
rbtn1.setText(p.alternativa[0]);
rbtn2.setText(p.alternativa[1]);
rbtn3.setText(p.alternativa[2]);
Se não puder ou não souber usar classes, use vetores com lista:
String[] pergunta;
ArrayList<String[]> listadearrays = new ArrayList<>();
pergunta = new String[5];
pergunta[0] = "Qual a Principal Placa do Computador ?"; // enunciado
pergunta[1] = "placa mãe"; // alternativa 1
pergunta[2] = "placa filha"; // alternativa 2
pergunta[3] = "placa pai"; // alternativa 3
pergunta[4] = "placa mãe"; // resposta
listadearrays.add(pergunta);
pergunta = new String[5];
pergunta[0] = "O que é HTML?"; // enunciado
pergunta[1] = "4 letras"; // alternativa 1
pergunta[2] = "5 letras"; // alternativa 2
pergunta[3] = "6 letras"; // alternativa 3
pergunta[4] = "4 letras"; // resposta
listadearrays.add(pergunta);
Collections.shuffle(listadearrays);
String[] p = listadearrays.get(0); // ou remove(0)
edpergunta.setText(p[0]);
rbtn1.setText(p[1]);
rbtn2.setText(p[2]);
rbtn3.setText(p[3]);
1 curtida
obrigado pela dica,mas na hora de fazer a condição com o arraylist para saber se a resposta esta coreta que eu não consequi fazer srsrs
diego12
Novembro 12, 2017, 11:16am
#9
String[] p = listadearrays.get(0); // ou remove(0)
edpergunta.setText(p[0]);
rbtn1.setText(p[1]);
rbtn2.setText(p[2]);
rbtn3.setText(p[3]);
int alternativaEscolhida; // entrada do usuário que pode ser 1,2 ou 3;
if (p[alternativaEscolhida].equals(p[4])) { // p[4] seria a resposta correta
// acertou
} else {
// errou
}
1 curtida