let unsorted = [{Name:Amy,age:20},{Name:Bill,age:20}]
let sortedDict = sorted(unsorted){a,b in return a.Name < b.Name}
如何根据Name键对未排序的数组进行排序?上面的代码似乎不起作用。排序字典数组(swift)
let unsorted = [{Name:Amy,age:20},{Name:Bill,age:20}]
let sortedDict = sorted(unsorted){a,b in return a.Name < b.Name}
如何根据Name键对未排序的数组进行排序?上面的代码似乎不起作用。排序字典数组(swift)
你在你的问题解释是错误的,所以我假设你有一个像
let unsorted = ["Amy": Amy, "Dan": Dan, "Ben": Ben]
字典如果是这样,你可以通过
let sorted = unsorted.sort { $0.0 < $1.0 }
我已编辑上面的字典。你能利用这一点并为此提出答案吗?谢谢。 – henry
你的排序语法作品(几乎)如果排序您正在使用自定义结构而不是字典
struct Person {
let name : String
let age : Int
}
let unsortedPeople = [Person(name:"Bill", age:20), Person(name:"Amy", age:20)]
现在您可以使用sorted
函数
let sortedDict = unsortedPeople.sorted{ $0.name < $1.name }
是数组只有2个索引还是只是一个例子?因为如果它比这更长,你会想要实现一个for循环来排序数组,因为它通过索引 – KSigWyatt
我认为你在这里缺少一些,它不能是一个字典,因为在你的情况下已经重复例如键名称'',你的代码当然不会编译。你能澄清你的问题吗? –
其示例var array:[Dictionary]。数组就是这样的。我想根据关键名称排序 –
henry