使用Xcode 7.1开发swift 2.2时有两种情况让我很困惑,请看下面的例子,谢谢
首先,在导入 Foundation 时,我声明了一个 testArray,其中包含两个项目,一个 Integer 类型 1 和一个 String 类型“hello”,我的问题是为什么 Swift 类型推断 testArray 到 Array(NSObject) 而不是 Array(Any)
import Foundation
let testArray = [1, "hello"]
print(testArray.dynamicType) //testArray is Array<NSObject>
其次,当我删除 import Foundation 时,下面的代码无法编译,错误消息是“表达式类型不明确,没有更多内容”,我的问题是为什么 Swift 在这种情况下不对 Array(Any) 进行类型推断,谢谢求助
let testArray2 = [2, "world"]
print(testArray2)
//can't compile, error message = "Type of expression is ambiguous without more content"