Ir para conteúdo
  • 0

[Resolvido] [Ajuda] Verificiar se contem um objeto em uma list


LuizB

Pergunta

Não está verificando.

 

 

Código:

 

public static void main(String[] args) {
		SaveQuiz.quiz.add(new Pair<String, String>("Isto é uma string", "Isto aqui também é uma string"));
		System.out.println(SaveQuiz.quiz.size());
		if (SaveQuiz.quiz.contains("Isto é uma string")) {
			
			System.out.println("Sim, contem");
		}
	}

Classe Save, onde fica a list 

public class SaveQuiz implements Serializable{
	

	/**
	 * 
	 */
	private static final long serialVersionUID = -2908529336674609438L;

	private static Main plugin = Main.m;
	
public static List<Pair<String, String>> quiz = new ArrayList<>();

	

	        public static void save() {
			File f = new File(plugin.getDataFolder(), "perguntas.yml");
			if (!(f.exists()))
				try {
					f.createNewFile();
				} catch (IOException e) {
					e.printStackTrace();
				}
			try {
				ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream(f));
				oos.writeObject(quiz);
				oos.close();
			} catch (Exception e) {
				e.printStackTrace();
			}
		}
		
		@SuppressWarnings("unchecked")
		public static void load() {
			File f = new File(plugin.getDataFolder(), "perguntas.yml");
			if (f.exists()) {
				try {
					
					ObjectInputStream ois = new ObjectInputStream(new FileInputStream(f));
					quiz = (List<Pair<String, String>>) ois.readObject();
					ois.close();
				
				} catch (Exception e) {
					e.printStackTrace();

				}
			}
		}

}

Classe pair:

 

class Pair<K, V> {
	  K key;
	  V value;

	  public Pair(K key, V value) {
	    this.key = key;
	    this.value = value;
	  }

	}

Link para o comentário
Compartilhar em outros sites

7 respostass a esta questão

Posts Recomendados

Em java 7, como fica ?

 

boolean found = false;

 

for (Pari<String, String> sla : quiz) {

  if (sla.key.equalsIgnoreCase("Isto é uma string")) {

    found = true;

    break;

  }

}

 

if (found) {..}

Nesse caso era melhor você utilizar um Map, pois você ta associando uma pergunta a uma resposta...

Link para o comentário
Compartilhar em outros sites

boolean found = false;

 

for (Pari<String, String> sla : quiz) {

  if (sla.key.equalsIgnoreCase("Isto é uma string")) {

    found = true;

    break;

  }

}

 

if (found) {..}

Nesse caso era melhor você utilizar um Map, pois você ta associando uma pergunta a uma resposta...

Aquele s do lambda, é oque ?

 

Eu só não uso porque não entendo

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...