אפשר בבקשה הסבר קצרצר ל-iterator ב-java?

אפשר בבקשה הסבר קצרצר ל-iterator ב-java?

אני כבר כמה ימים קורא ומנסה להבין ולא מצליח להבין בדיוק מה זה.

אשמח מאוד אם מישהו יוכל להסביר בקצרה.

תודה מראש
 
הסבר שלי.

נגיד יש לך מבנה נתונים ואתה רוצה לעבור על כולו. איך תעשה את זה?אז יש pattern (תבנית) קבועה לכל זה.
דוגמא.נניח יש לך רשימה מקושרת list של רשימת שיחות.
היא אחראית ליצור לך אובייקט מסוג Iterator.
אובייקט זה יש לו שני מתודות:
hasNext האם קיים עוד איבר?
next האיבר הבא בתור
אז בעזרת שניהם אתה יכול לרוץ על כל הרשימה
לדוגמא
lIterator iter = list.iterator();
while(iter.hasNext()){
Call call = (Call)iter.next();
call.whatever();
}

אני ממליץ מאוד לקרוא את הספר הכיפי head first design patterns.
יש שם הסבר ממש ממש טוב
 
למעלה