Middle
Niyə Iterator interfeysi üçün konkret tətbiqlər nəzərdə tutulmayıb?
sobes.tech Süni İntellekt
AI-dan cavab
Iterator interfeysi kolleksiyaları keçmək üçün müqaviləni müəyyən edir. Konkret tətbiqlər kolleksiyaların daxili strukturundan asılıdır (məsələn, ArrayList, LinkedList, HashSet). Ümumi tətbiq təmin etmək səmərəsiz və ya mümkün deyil, çünki hər kolleksiyanın xüsusiyyətlərini nəzərə almalıdır.
Məsələn:
ArrayList.iterator()elementləri indekslə keçir.LinkedList.iterator()elementləri düyünlər arasındakı göstəriciləri izləyərək keçir.HashSet.iterator()elementləri daxili səbət və bağlı siyahılar/qırmızı-qara ağaclar istifadə edərək keçir.
Yalnız kolleksiya özü, məlumat strukturuna ən səmərəli iteratoru necə təmin edəcəyini bilir.