Tôi có các tình huống khác nhau trong các vòng mà tôi sẽ 'peek' hoặc 'bỏ qua' phía trước trong khi lặp qua các mục để xử lý.Groovy 'Peeking' phía trước với một trình lặp?
Một kịch bản là tôi liệt kê thông qua các dòng của một tệp và có ký tự 'tiếp tục' ở cuối dòng cho biết để kết hợp dòng tiếp theo với dòng hiện tại. Nếu tôi chỉ đơn giản là looping mà không phải là quá khó, tôi chỉ có thể đọc dòng tiếp theo, và bump counter/index của tôi.
Nó không phải là rõ ràng là mô hình để làm điều này với iterator của tôi. Tôi thực sự muốn tiêu thụ (các) dòng tiếp theo mà không thoát khỏi sự đóng cửa của tôi. Nhưng tôi thậm chí không chắc chắn nếu điều đó là có thể. Có bất kỳ mẫu thiết kế tốt nào cho mẫu lặp này bằng cách sử dụng một kết thúc, vì vậy tôi không phải dùng đến một vòng lặp ít hấp dẫn hơn? Nó có lẽ là một hình thức của iterator với một số ngăn xếp cho đẩy/popping mục để xử lý?
Tôi thường sử dụng một trang trí xung quanh iterator như thế này: https://gist.github.com/ataylor284/5389604 – ataylor