-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
可能であれば、ラムダ式が欲しい! – Zaknafein