Sous-listes Java8 d’une liste utilisant des lambdas

J’ai un problème qui, à mon avis, conviendrait parfaitement pour les ruisseaux et / ou les lambdas. Par contre, je ne veux pas compliquer cela, mais comme je vais utiliser cette technique spécifique dans de nombreuses variantes (exécuter une fonction sur une sous-liste), j’aimerais avoir quelques idées sur la façon de bien faire les choses dès le début.

J’ai une List productList .

Je veux pouvoir parcourir toutes les sous-listes de productList . Par exemple, toutes les sous-listes de taille = 30. Cette sous-liste devrait alors être utilisée comme argument d’une fonction.

Voici ma solution actuelle et naïve:

 List products=... // This example uses sublists of size 30 for (int i = 0; i < products.size() - 29; i++) { // sublist start index is inclusive, but end index is exclusive List sublist = products.subList(i, i + 30); Double res = calc(sublist); } // an example of a function would be moving average 

Comment cela serait-il implémenté avec lambdas?

EDIT J’ai essayé de donner l’exemple le plus simple possible pour illustrer le problème. Après quelques commentaires, j’ai réalisé qu’un exemple parfait consiste à calculer une moyenne mobile. La première MAVG est calculée sur la sous-liste [0..29], la deuxième sur [1..30], la troisième sur [2..31], etc.