שאלה ממבחן 2008 מועד ב'

מנהל: The Architect

נעול
shirang
הודעות: 18
הצטרף: 00:07 19/11/2008

שאלה ממבחן 2008 מועד ב'

שליחה על ידי shirang » 10:39 13/03/2009

בשאלה מספר 1 בסעיף ג משתמשים בלולאת ה- for הבאה:
for (Object data : ds)
מה אומר הפורמט הזה של for?

בנוסף, השיטה מקבלת אובייקט מסוג Iterable שנקרא ds. איך אני יכולה לעבוד עם אובייקט שהוא מסוג Iterable ולא מסוג Iterator? איך אפשר לאתחל אותו?

תודה

orankap
הודעות: 67
הצטרף: 14:23 02/12/2008

שליחה על ידי orankap » 12:26 14/03/2009

אני עשיתי משהו כזה, אם מישהו יוכל לאשר לי את זה אני אשמח :D

קוד: בחירת הכל

list ans=new List();
Iterator iter = ds.iterator();
while(iter.hasNext()){
	object deta =  iter.next();
	if(f.accept(deta)
		ans.addLast(deta);
	}
} 

TA_Igal
הודעות: 28
הצטרף: 18:08 05/11/2008

Re: שאלה ממבחן 2008 מועד ב'

שליחה על ידי TA_Igal » 10:11 15/03/2009

shirang כתב:בשאלה מספר 1 בסעיף ג משתמשים בלולאת ה- for הבאה:
for (Object data : ds)
מה אומר הפורמט הזה של for?

בנוסף, השיטה מקבלת אובייקט מסוג Iterable שנקרא ds. איך אני יכולה לעבוד עם אובייקט שהוא מסוג Iterable ולא מסוג Iterator? איך אפשר לאתחל אותו?

תודה
אובייקט מסוג Iterable מציין שלאובייקט יש מתודה:

קוד: בחירת הכל

Iterator iterator()

לכן השימוש הנכון הוא:

קוד: בחירת הכל

Iterator it = ds.iterator();
ואח"כ ניתן להשתמש ב it כרגיל.
צוות מבוא למדעי המחשב (מתרגל)

נעול

חזור אל “- מבוא למדעי המחשב”