BlitzMax/语言/集合
外观
BlitzMax 提供一个简单的支持,用于管理对象集合,以及使用一种特殊的 For/Next 循环访问集合中的每个对象。
最简单的集合类型是数组
Local a[]=[1,2,3,4,5] For Local k=EachIn a Print k Next
此类循环的每次迭代都会将下一个数组元素(从元素 0 开始)分配给索引变量,然后执行循环体。这允许您依次“访问”每个数组元素。
还可以使用用户定义类型创建自己的集合类型。
要执行此操作,必须创建一个包含命名为 ObjectEnumerator 的方法的用户定义类型,该方法不采用任何参数并返回一个对象。此方法返回的对象本身必须具有以下方法
Method HasNext:Int() 'returns true if there's a next object Method NextObject:Object() 'returns the next object
之后,您可以在 For/Next 循环中使用此对象
Local list:TList=New TList list.AddLast "Hello" list.AddLast "World!" For Local t$=EachIn list Print t Next