任何? to Dictionary Cast and retrieving value

时间:2014-12-30 02:35:53

标签: swift

接收Any的功能测试?可选对象,一旦我们确定它不是零,我们怎样才能掌握基础字典值。

错误:没有名为subcript的成员。投入字典对两者都没有帮助。 println(paramValue as Dictionary) Any is not convertible to Dictionary<Key, Value>

func test(params: Any?) {

    if let paramValue = params {
        println(paramValue)
        //println(paramValue["value"])
    }

}

test(["value": 10])

1 个答案:

答案 0 :(得分:0)

println(paramValue as Dictionary)不起作用,因为字典是类型安全的。

您可以使用:

println(paramValue as [String : Int])

如果那些将永远是正确的类型。

如果它们可能会更改,请使用可选投射(as?代替as)。