当前位置:  开发笔记 > 编程语言 > 正文

在Swift中将数组从24小时转换为12小时

如何解决《在Swift中将数组从24小时转换为12小时》经验,为你挑选了1个好方法。



1> ayaio..:

您没有使用正确的值进行转换:您的two变量始终是数组的第一项.

只需使用twelve,它代表循环时数组中的每个项目:

for twelve in arrayTimes {

    let dateFormatter = NSDateFormatter()
    dateFormatter.dateFormat = "H:mm"
    let date12 = dateFormatter.dateFromString(twelve)!

    dateFormatter.dateFormat = "h:mm a"
    let date22 = dateFormatter.stringFromDate(date12)

    print(date22)

    print("output \(twelve)")
}

另外,只是一个提示:每次循环迭代时都不需要创建新的格式化程序,只能在循环外部声明格式化程序一次.并且小心使用强制解包的选项,我更喜欢使用if let或任何其他已知方法guard.

示例if let:

let dateFormatter = NSDateFormatter()

for twelve in arrayTimes {

    dateFormatter.dateFormat = "H:mm"
    if let date12 = dateFormatter.dateFromString(twelve) {
        dateFormatter.dateFormat = "h:mm a"
        let date22 = dateFormatter.stringFromDate(date12)
        print(date22)
        print("output \(twelve)")
    } else {
        // oops, error while converting the string
    }

}

推荐阅读
手机用户2402852307
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有