-3
아래 코드를 작성하고 싶습니다. Java8 스트림과 함수형 프로그래밍을 사용하고 싶습니다.복잡한 방법을 람다 식으로 변환
private static void algoritmoSolC(List<Storage> freeSpaces, Double dimPacket, Double nPackets,
int storageIndex) {
if (nPackets == 0)
return;
List<Storage> list = new ArrayList(freeSpaces) {
public Object get(int index) {
if (index < 0) {
index = Math.abs(index);
} else if (index >= size()) {
index = index % size();
}
return super.get(index);
}
};
for (int i = 0; i < nPackets; i++) {
Storage storage = list.get(storageIndex);
if (storage.getFreeSpace() > dimPacket) {
storage.setFreeSpace(storage.getFreeSpace() - dimPacket);
++storageIndex;
} else {
++storageIndex;
++nPackets;
}
}
}
기능 프로그래밍에서 코드를 변환하면 결과에 소요되는 시간이 줄어 듭니다. 누군가이 코드 스 니펫을 변환하는 데 도움을 줄 수 있습니까? 사전에 덕분에
:-) 코드 당신이 무엇을 원하는 정확히 않는
정말 놀라 울 정도로 더 우아한 탄트 인이 보면 해야 할 것? 더 구체적으로 말하십시오. – Stefan
가능한 경우 lamda 표현식을 원합니다! – Zaknafein