Salve turma estou tentando filtrar uma lista de objetos em java.
Tenho o seguinte lista:
public List<country> lista(){
List<country> pacotes = new ArrayList<>(Arrays.asList(
new country("Brazil"),
new country("França"),
new country("Holanda"),
new country("Canada"),
new country("USA"),
new country("Polonia"),
new country("China"),
new country("Japao"),
new country("Suiça"),
new country("Mexico"),
new country("Bolivia"),
new country("ARgentina")
));
return pacotes;
}
Pego ela e salvo com List lista = new CountryDAO().lista();
Porem quero fazer um sorteio e pegar 4 objetos aleatorios.
Tentei da seguinte maneira criando uma class sorteio:
public static List<country> sortearPaises(List<country> countriesList){
List<country> newList = new ArrayList<country>();
Random random = new Random();
int count = 0;
while(count < 4){
int w = random.nextInt(countriesList.size());
country newcountry = countriesList.get(w);
country jaEstaEmUso = countriesList.stream().filter(x -> Objects.equals(x.getPais(), newcountry.getPais())).findFirst().orElse(null);
if (jaEstaEmUso == null){
newList.add(countriesList.get(w));
count++;
}
}
return newList;
}
App quebra falando que não tem nada na lista.