Recopilando flujo nuevamente en el mismo tipo de colección
Supongamos que tengo una colección del tipo desconocido. Lo que quiero hacer es transmitirlo, hacer algunas cosas en la transmisión y volver a recopilarlo en el mismo tipo de colección que mi colección original. Por ejemplo:
Collection<? extends Integer> getBigger(Collection<? extends Integer> col, int value) {
return col.stream().filter(v -> v > value).collect(????);
}
La idea de este ejemplo de código incompleto es devolver unList
Sicol
es deList
clase (o cualquier subclase de ella), unSet
Sicol
es deSet
clase, etc ... El nombre del método y las operaciones reales en la secuencia aquí no son importantes, las he especificado solo para ilustrar mi pregunta. Entonces, ¿es posible?