agrupando objetos java 8

Tengo algo como lo siguiente:

public class MyClass {
private Long stackId
private Long questionId
}

Una colección de say 100, donde el stackid podría duplicarse con diferentes questionIds. Es una relación de uno a muchos entre stackId y questionId

Hay unfluida, Java 8 maneras de convertir a la estructura a continuación:

public class MyOtherClass {
private Long stackId
private Collection<Long> questionIds
}

Cuál sería una colección de 25, con cada instancia con una colección anidada de 4 questionIds.

Entrada:

[{1,100},{1,101},{1,102},{1,103},{2,200},{2,201},{2,202},{1,203}]

Salida

[{1, [100,101,102,103]},{2,[200,201,202,203]}]

Respuestas a la pregunta(3)

Su respuesta a la pregunta