gpt4 book ai didi

swift - 按字母顺序排序结构(swift4)

转载 作者:行者123 更新时间:2023-11-28 08:00:44 28 4
gpt4 key购买 nike

我的代码现在将条目附加到结构中。如果按下按钮,它会将条目添加到标签并对标签进行排序。所以按下按钮 -> 进入结构 -> 结构被打印并在标签上排序。我希望结构中的每个条目都以编程方式排序,就像我通过影响标签的操作按钮所做的那样。

import UIKit

class ViewController: UIViewController {
@IBOutlet var a: UITextField!
@IBOutlet var label: UILabel!

var contacts = [Person]()

@IBAction func save(_ sender: Any) {
contacts.append(Person(name: a.text!))
let sortedContacts = contacts.sorted {
($0.name < $1.name)
}
label.text = contacts.count == 0 ? "" : sortedContacts.map { $0.description }.joined(separator: "\n")

}

struct Person {
var name: String

var description: String {
return "\(name)"
}
}
}

最佳答案

如果您的目标是对 Person 对象数组进行排序,则对 contacts 进行排序:

@IBAction func save(_ sender: Any) {
contacts.append(Person(name: a.text!))
contacts.sort { $0.name < $1.name }
label.text = contacts.map { $0.description }.joined(separator: "\n")
}

如评论中所述,您应该更新您的 Person 结构:

struct Person: CustomStringConvertible {
let name: String

var description: String {
return name
}
}

关于swift - 按字母顺序排序结构(swift4),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46750243/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com