“NSArray' 没有名为 'append' 的成员

"NSArray' does not have a member named 'append'

我刚刚开始 swift 编码,我正在尝试学习教程。但似乎我关注的编码器可能有旧版本,或者我做错了什么。我正在尝试制作一个声音对象来制作音板。但是当我尝试使用追加将声音文件添加到数组时,它说方法 append 不是 NSArray 的成员。谁能告诉我解决这个问题的正确方法是什么?!]1

NSArray 是一个不可变对象。 你必须使用 NSMutableArray 这里是 documentation

您应该使用 Swift 本机类型数组

var array: [Any] = []

如果您知道它只有一种类型,您可以按照以下步骤操作:

var intArray: [Int] = []
var doubleArray: [Double] = []
var stringArray: [String] = []

Swift 和 Foundation 数组是不同类型的对象。
Swift Array声明了一个叫append的方法,NSMutableArrayNSArray是不可变的,创建后不能修改)没有声明那种方法。
解决方案是将 NSArray 转换为 Array 类型(使用 as 运算符,因为它们是桥接的),或者在 NSMutableArray 上使用方法 -addObject: , 但首先你需要制作 NSArray

-mutableCopy

将声音声明为

var sounds: [Sound] = []