Ios 如何更好地管理数据详细信息(Swift)

Ios 如何更好地管理数据详细信息(Swift),ios,swift,uitableview,Ios,Swift,Uitableview,我想在TableView中列出一些数据,并创建一个DetailView。用户点击单元格并转到DetailView。在DetailView中,我必须检查用户在TableView中选择了什么样的数据。我传递数据名称(单元格标题)和索引(通过prepareForSegue方法)。我可以通过两种方式检查数据的名称:按索引或按名称(按开关)。哪条路更好。我的IndexCheck代码如下所示: let Details = ["first","second","third"] var PassedIndex:

我想在TableView中列出一些数据,并创建一个DetailView。用户点击单元格并转到DetailView。在DetailView中,我必须检查用户在TableView中选择了什么样的数据。我传递数据名称(单元格标题)和索引(通过prepareForSegue方法)。我可以通过两种方式检查数据的名称:按索引或按名称(按开关)。哪条路更好。我的IndexCheck代码如下所示:

let Details = ["first","second","third"]
var PassedIndex:Int


override func ViewDidLoad () {
super.ViewDidLoad()
self.DetailLabel.text = Details[PassedIndex]
}
var PassedName:String?
var DetailText:String
switch PassedName {

case "NumberOne":
                  DetailText = "#1"
case "NumberTwo":
                  DetailText = "#2"
case "NumberThree":
                  DetailText = "#3"
default:
                  DetailText  = "Unknown number"

}

 override func ViewDidLoad () {
super.ViewDidLoad()
self.DetailLabel.text = DetailText
}
名字支票是这样的:

let Details = ["first","second","third"]
var PassedIndex:Int


override func ViewDidLoad () {
super.ViewDidLoad()
self.DetailLabel.text = Details[PassedIndex]
}
var PassedName:String?
var DetailText:String
switch PassedName {

case "NumberOne":
                  DetailText = "#1"
case "NumberTwo":
                  DetailText = "#2"
case "NumberThree":
                  DetailText = "#3"
default:
                  DetailText  = "Unknown number"

}

 override func ViewDidLoad () {
super.ViewDidLoad()
self.DetailLabel.text = DetailText
}

哪条路最好?这使得系统运行得更快?我只是一个初学者,所以我需要比我更有经验的程序员给我一个建议

检查
细节的两种方法中最好的方法是按索引检查。为什么?因为它需要O(1)来获取您需要的值。通过
字符串检查
在最坏情况下取O(n)。但是我建议您创建一个
枚举
,其中包含您的
详细信息
,并准确地传递所需的详细信息。

因此您希望使用prepareforsgue()将数据传递给另一个ViewController@Lamar不,我已经做过了,但是我不知道用哪种方式检查传递的名称better@Lamar或也许解决itcheck的方法更多,它的名字是:(