我正在尝试学习 Swift 的基础知识,目前正在尝试创建随机数列表并对它们进行排序。
var myNSArray = [1,2,3,4]
sort(myNSArray,>) //this works = [4,3,2,1]
var myArray: NSMutableArray = []
for i in 0..20 {
myArray.addObject(Int(rand())%100)
}
var myNew: NSArray = myArray.mutableCopy() as NSArray
var mySorted = sort(myNew,>) //This give an error
这是错误:
...error: could not find an overload for 'sort' that accepts the supplied arguments
编辑:
我能够使用 Array
重写此代码,如下所示:
var myArray: Int[] = []
for i in 0..20 {
myArray.append(Int(rand())%100)
}
myArray = sort(myArray,>)
这更干净!
最佳答案
在第一个示例中,myNSArray
不是 NSArray
:
var myNSArray = [1,2,3,4]
sort(myNSArray,>) //this works = [4,3,2,1]
但在这些例子中:
var myArray: NSMutableArray = []
for i in 0..20 {
myArray.addObject(Int(rand())%100)
}
var myNew: NSArray = myArray.mutableCopy() as NSArray
var mySorted = sort(myNew,>) //This give an error
它明确是一个 NSArray
和一个 NSMutableArray
。这些类没有声明 sort()
关于swift - NSArray 排序 Swift 错误 : could not find an overload for 'sort' that accepts the supplied arguments,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24025006/