HashimR:
Tengo una lista anidada de Long
. por ejemplo:
List<List<Long>> ids = [[1,2,3],[1,2,3,4],[2,3]];
¿Hay alguna manera el uso de corrientes para crear una nueva lista de elementos que están presentes en todas las listas:
List<Long> result = [2,3];
Ruslan:
Hay solución concisa y sin bastante corriente:
List<Long> result = new ArrayList<>(ids.get(0));
ids.forEach(result::retainAll);
System.out.println(result);
Actualizar : como se mencionó en los comentarios por @ernest_k para evitar lo superfluo retainAll()
llamada puede obtener lista secundaria antes:
ids.subList(1, ids.size()).forEach(result::retainAll);