我是 libgdx 的新手,我想知道是否有人可以解釋什么是數(shù)組迭代器,以及它的方法是如何使用的?ArrayIterator<Image> iterator = new ArrayIterator<Image>();//takes in array
1 回答

慕絲7291255
TA貢獻(xiàn)1859條經(jīng)驗(yàn) 獲得超6個(gè)贊
在LibGdx
陣列設(shè)計(jì)工作,因?yàn)?code>List意味著你可以擁有可調(diào)整大小的陣列,它可以在運(yùn)行時(shí)長。
來自文檔
一個(gè)可調(diào)整大小的、有序或無序的對(duì)象數(shù)組。如果是無序的,這個(gè)類在刪除元素時(shí)避免內(nèi)存復(fù)制(最后一個(gè)元素被移動(dòng)到被刪除元素的位置)。
Array.ArrayIterator:是一個(gè)static
遵循Iterator
模式的內(nèi)部類。
Array
是這樣創(chuàng)建的 LibGdx
Array<Image> imgs = new Array<Image>();
所以為了提供平滑的旅行技術(shù),迭代器模式被廣泛用于與foreach
循環(huán)一起遍歷數(shù)組
while(iterator.hasNext()){ Image img = iterator.next();}
迭代器模式的好處
允許像
Animal
引用這樣的多態(tài)語句可用于遍歷像Cat
或Dog
由于迭代器模式,可以遍歷任何類型的集合數(shù)據(jù)(存儲(chǔ)數(shù)據(jù)并支持迭代器)
添加回答
舉報(bào)
0/150
提交
取消