swift数组无法将'AnyObject'类型的值转换为预期的参数类型@noescape(AnyObject)throws - >布尔

时间:2016-01-14 10:10:20

标签: swift

    let otherArray:[AnyObject] = ["a","aa","aaa"]
    let otherArrayElemnt = otherArray[0]
    let myArray:[AnyObject] = ["qq"]
    if myArray.contains(otherArrayElemnt){     //<<<<<<< Error HERE
        //if contains...doSomething
    }else{
        //none doSomething
    }

错误:无法将'AnyObject'类型的值转换为预期的参数类型@noscape(AnyObject)throws - &gt;布尔

我不知道如何解决它

1 个答案:

答案 0 :(得分:1)

  1. String不是对象,因此它不符合协议AnyObject。请改用Any
  2. AnyObjectAny都不是Equatable,因此函数contains不知道如何将数组元素与otherArrayElement进行比较。< / LI>

    为什么需要使用Any元素数组?为什么不使用String的数组呢?你还想在其中存储什么?