Swift(String:AnyObject)不能转换为[String:AnyObject]

时间:2016-09-08 04:05:07

标签: ios swift

嗨我得到了这样的代码,但Xcode显示错误:

  

(String:AnyObject)不能转换为[String:AnyObject]

func personDetails (dic : [String:AnyObject]) -> Array<Person> {
       for personDic: [String : AnyObject] in dict { >> error in this line
        let person = Person.init(person: personDic)
        //rest the code
        }
}

如何使其正确?

2 个答案:

答案 0 :(得分:2)

问题在于,您尝试迭代for循环并在for loop中希望每次迭代都是Dictionary的{​​{1}},这是不可能的。你可以像这样用Dictionary编写for循环。

Dictionary

此处键包含键,值包含该键的相应值。使用此循环,您可以迭代到每个for(key,value) in dict { print(key) print(value) } 字典对。

答案 1 :(得分:1)

你应该做的是:

for (key, value) in dict {
    let person = Person(person: [key: value])
}