在Swift中迭代JavaUtilList

时间:2015-04-16 08:38:03

标签: ios objective-c swift sqlite

我有一个用J2Objc翻译的列表:

var userDtoIds:JavaUtilList = // some list

现在我想用for in循环迭代这个列表。我试过了:

for iten in userDtoIds {
} 

错误:类型'JavaUtilList'不符合协议'SequenceType'

使用:

 let arr:IOSObjectArray = userDtoIds.toArray()
 for iten in arr {      
 }

我收到错误:类型'IOSObjectArray'不符合协议'SequenceType'

它的唯一工作方式是:

for var i:Int32=0; i < userDtoIds.size(); i++ {
}

我可以使用for in循环迭代JavaUtilList吗?

编辑:

以下代码会导致运行时错误:

var list = userDtoIds as! NSArray
for item:String in list as! [String] {
}

1 个答案:

答案 0 :(得分:0)

extension IOSObjectArray: Sequence {
   func makeIterator() -> Iterator {
       // Create iterator
   }

Here is a wonderful article on conforming custom collection types, even if you are using j2objc