Como encontrar um elemento em uma lista de listas

Adam Amin:

Eu tenho a seguinte lista de listas List<List<Integer>> dar = new ArrayList<List<Integer>>();:

[[0], [1, 2, 0], [2, 1, 0], [5, 0]]

Quero verificar se o inteiro 5 está em nenhuma das listas. Se eu usar if(dar.contains(5)), ele irá retornar false.

O que posso fazer para verificar se um inteiro existe em qualquer das listas?

GBlodgett:

Iterar sobre os Listde List's e, em seguida, chamada contém:

for(List<Integer> list : dar) {
    if(list.contains(5)) {
       //...
    }
}

Ou o uso Streamde:

boolean five = dar.stream().flatMap(List::stream).anyMatch(e -> e == 5);
//Or:
boolean isFive = dar.stream().anyMatch(e -> e.contains(5));

Acho que você gosta

Origin http://43.154.161.224:23101/article/api/json?id=314893&siteId=1
Recomendado
Clasificación