匹配两个数组之间的值

时间:2015-05-26 10:48:35

标签: arrays swift match

我正在尝试查找数组中是否存在值,如下所示(有效):

while x < mySegmentXMax && contains(myOtherArray, 41) {                             
     myPhysicsBodyCount = myPhysicsBodyCount + 1
     x = x + 1
}

然而,当我尝试使这个动态并使用另一个包含值的数组时,无论我尝试什么,我都会遇到错误。我在下面尝试过的例子:

while x < mySegmentXMax && contains(myOtherArray, myArray[Int(x)] as NSObject) {
    myPhysicsBodyCount = myPhysicsBodyCount + 1
    x = x + 1
}

注意:作为NSObject的myArray [Int(x)]等于41,所以我应该得到相同的结果。

有人能看到我在这里做错了吗?

1 个答案:

答案 0 :(得分:0)

这解决了我的问题,我开始认为我的阵列超出范围,即使它从未指定为错误。以下是我的所作所为。

while x < mySegmentXMax && contains(myOtherArray, myInt) {
      myPhysicsBodyCount = myPhysicsBodyCount + 1
      x = x + 1
      if x < mySegmentXMax {
            myInt = myArray[Int(x)] as! NSInteger
      }
}

等等,这段代码更好

while x < mySegmentXMax && contains(myOtherArray, myArray[Int(x)] as! NSInteger) {
      myPhysicsBodyCount = myPhysicsBodyCount + 1
      x = x + 1
}

感谢Giorashc和Jacobson的帮助。