2016-12-16 3 views
-3

Je veux écrire mon code ci-dessous, avec de nouvelles choses. Je veux utiliser le flux Java8 et la programmation fonctionnelle. Je pense que si je convertis du code en programmation fonctionnelle, je passe moins de temps pour le résultat. Quelqu'un peut-il m'aider à convertir cet extrait de code? Merci à l'avanceConvertir une méthode complexe en Lambda Expression

+0

Que voulez-voulez-vous faire? S'il vous plaît soyez plus précis. – Stefan

+0

je veux une expression lamda, si possible! – Zaknafein

Répondre

2

n'a pas vraiment testé, mais il pourrait aller à ce sujet:

IntStream 
.range(storageIndex,Integer.MAX_VALUE) 
.mapToObj(i-> freeSpaces.get(Math.abs(i) % freeSpaces.size())) 
.filter(storage -> storage.getFreeSpace() > dimPacket) 
.limit(nPackets) 
.forEach(storage.setFreeSpace(storage.getFreeSpace() - dimPacket)) 

En regardant cela, il est vraiment surprenant Thant plus élégant votre code :-)

+0

Merci. Oui c'est élégant et ça marche !!! – Zaknafein