唯一的方法是使用带有
==类型参数的函数,然后比较值是否都是该类型的值:
func isEqual<T: Equatable>(type: T.Type, a: Any, b: Any) -> Bool { guard let a = a as? T, let b = b as? T else { return false } return a == b}现在,使用上面的变量,您可以像这样比较它们:
var any1: Any = 1var any2: Any = 1var any3: Any = "test"var any4: Any = "test"isEqual(type: Int.self, a: any1, b: any2) // trueisEqual(type: Int.self, a: any2, b: any3) // falseisEqual(type: String.self, a: any3, b: any4) // true



