我有来自本地数据库的日期(字符串)数组,如下所示。
datesFromDBArray:["04/12/2017 07:10:41", "04/12/2017 07:12:17", "04/12/2017 07:13:54", "04/12/2017 07:17:45", "04/12/2017 07:18:56", "05/12/2017"]在这里,相同的日期可以有多次。
也是从相同的数据库中,我得到了一些其他数据,称为actions。
ActionsDBArray:["1", "6", "1", "1", "1", "2", "2", "2", "4", "1", "5", "2", "3"]以上两个数据是从本地数据库获取的。两个数组的计数数相等。
现在,我从服务器响应中得到了一些日期。这就像
TotalDaysServerArray:["22/11/2017 11:59:59", "23/11/2017 11:59:58", "24/11/2017 11:59:57"]这里,我在表视图中显示TotalDaysServerArray数据。
因此,在这里,如果用户按下第一个单元格,如22/11/2017 11:59:59,我需要检查datesFromDBArray中是否存在此日期(不是时间,只有相同的日期),如果存在,则需要检查其存在多少索引,并需要获取ActionsDBArray相同的索引数据。
因此,我需要获得ActionsDBArray索引的列表,并需要在其他地方显示该索引的列表。
我尝试了一些没有工作的逻辑,所以,我在这里发布查询。
有谁能给我建议一下,如何做到这一点?
发布于 2017-12-07 05:44:19
let clickedStr = TotalDaysServerArray[indexPath.row]
let str = clickedStr.components(separatedBy: " ").first
for(index , value) in datesFromDBArray.enumerated() {
if str == value.components(separatedBy: " ").first! {
print(ActionsDBArray[index])
}
}发布于 2017-12-06 14:46:26
这是孩子的游戏,不知道你在哪里坚持逻辑
注意:我在04/12/2017 07:10:41中手动添加了第一个对象来测试逻辑。
var datesFromDBArray = ["04/12/2017 07:10:41", "04/12/2017 07:12:17", "04/12/2017 07:13:54", "04/12/2017 07:17:45", "04/12/2017 07:18:56", "05/12/2017"]
var ActionsDBArray = ["1", "6", "1", "1", "1", "2", "2", "2", "4", "1", "5", "2", "3"]
var TotalDaysServerArray = ["04/12/2017 11:59:59","22/11/2017 11:59:59", "23/11/2017 11:59:58", "24/11/2017 11:59:57"]
let findingValue = TotalDaysServerArray.first!
print(findingValue)
let index = datesFromDBArray.index { (string) -> Bool in
string.components(separatedBy: " ").first == findingValue.components(separatedBy: " ").first
}
print(index)
if let i = index {
print("Your Object in ActionsDBArray \(ActionsDBArray[i])")
}产出: 2017年12月04/12 11:59:59 任择(0) ActionsDBArray 1中的对象
希望这对你有帮助
https://stackoverflow.com/questions/47676767
复制相似问题