Mam różne scenariusze w pętlach, w których "podglądałem" lub "przeskakiwałem" do przodu podczas iteracji elementów do przetworzenia.Groovy 'Peeking' z przodu z iteratorem?
Jednym ze scenariuszy jest wyliczanie za pomocą linii pliku, a na końcu linii znajduje się znak "kontynuacja" wskazujący połączenie następnego wiersza z bieżącym wierszem. Jeśli po prostu zapętlam, to nie jest zbyt trudne, mogę po prostu przeczytać następną linię i uderzyć w mój licznik/indeks.
Nie jest tak oczywiste, jak to zrobić z moim iteratorem. Skutecznie chcę skonsumować kolejną linię bez zamykania się. Ale nie jestem nawet pewien, czy to możliwe. Czy istnieje jakiś dobry wzorzec projektu dla tego wzoru iteracji za pomocą zamknięcia, więc nie muszę uciekać się do mniej groźnej pętli? Czy jest to może forma iteratora z pewnym stosem do wypychania/popping przedmiotów do przetworzenia?
I zazwyczaj używa dekorator wokół iteratora tak: https://gist.github.com/ataylor284/5389604 – ataylor