如何比较数组中的 UIImages?

How to compare UIImages in arrays?

我正在制作一个应用程序,如果能够比较一个 array/set 中的值就好了。

假设我有这样的常量和数组:

let blueImage = UIImage(named: "blue")
let redImage = UIImage(named: "red")

button.setImage(blueImage, forState: .Normal)
button2.setImage(redImage, forState: .Normal)
button3.setImage(blueImage, forState: .Normal)

var imageArray:Array<UIImage> = [button.currentImage, button2.currentImage, button3.currentImage]

然后是否可以 check/compare 我数组中的值并将红色图像替换为蓝色图像。

更具体地说,有没有一种方法可以检查数组中 2/3 的图像是否包含特定图像 (blueImage),然后将最后一个值 (redImage) 替换为(blueImage)让所有人都有相同的图片。

我想您可以按照以下方式过滤数组:

let filteredArray = filter(imageArray) { [=10=] == blueImage }

然后 运行 计数。

您还可以遍历您的数组:

let countBlue = 0

for i in 0..<imageArray.count {

    if imageArray[i] == blueImage {
        countBlue ++
    }
}

要替换元素:

imageArray[2] = blueImage