美文网首页
Swift时间交集判断

Swift时间交集判断

作者: 鄒賢 | 来源:发表于2023-03-16 11:16 被阅读0次
    override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
        let dft = DateFormatter()
        dft.dateFormat = "HH:mm"
        
        let times = [["08:30", "12:25"], ["12:33", "15:28"]]
        
        let dynaStartTime = stringToDate(string: "15:29", dateFormat: "HH:mm")
        let dynaEndTime = stringToDate(string: "20:00", dateFormat: "HH:mm")
        
        for item in times {
            let fixedStartTime = stringToDate(string: item[0], dateFormat: "HH:mm")
            let fixedEndTime = stringToDate(string: item[1], dateFormat: "HH:mm")
            let result = checkTimesHasOverlap(dynaStartTime: dynaStartTime, dynaEndTime: dynaEndTime, fixedStartTime: fixedStartTime, fixedEndTime: fixedEndTime)
            print("\(result)")
        }
    }
    
    //字符串 -> 日期
    func stringToDate(string:String, dateFormat:String) -> Date {
        let formatter = DateFormatter()
        formatter.locale = Locale.init(identifier: "zh_CN")
       formatter.timeZone = TimeZone(secondsFromGMT: 0)
        formatter.dateFormat = dateFormat //"yyyy-MM-dd HH:mm:ss"
        let date = formatter.date(from: string)
        return date ?? Date()
    }

    /**
     * 判断两个时间范围是否有交集
     *
     * @param dynaStartTime  比较时间段开始时间
     * @param dynaEndTime    比较时间段结束时间
     * @param fixedStartTime 参考时间段开始时间
     * @param fixedEndTime   参考时间段结束时间
     * @return
     */
    func checkTimesHasOverlap(dynaStartTime: Date, dynaEndTime: Date, fixedStartTime: Date, fixedEndTime: Date) -> Bool {
        return !(dynaEndTime < fixedStartTime || dynaStartTime > fixedEndTime);
    }

相关文章

  • 判断时间,日期是否有交集

    判断如下时间是否有交集 判断交集的方法 循环判断每个对象是否有交集

  • 集合常用方法

    CollectionUtils 判断集合是否为空 判断集合是否不为空 集合是否相等 集合的交集、并集、补集、交集的...

  • Swift 对象相等(EqualTo)判断

    Swift 对象相等(EqualTo)判断 @(编程笔记)[iOS开发,Swift] 之前一直知道Swift用的是...

  • 实用正则表达式

    1、判断邮箱格式(swift) 2、判断是否是手机号(OC)

  • Swift判断

    IF LET 1.语法格式 if let 新的变量名 = 可选项 { }-->新的变量名是可选项解包之后的值 2....

  • Swift 基础笔记 - 枚举

    枚举 OC定义和使用枚举 Swift定义枚举类型 Swift判断枚举类型 枚举成员类型

  • 日期段交集判断方法

    如何判断两个日期段的交集呢? 在一般情况下,我们会把日期发生交集的可能性一一都列出来. 如果放到程序中去,为了判断...

  • 判断坐标是否有交集

  • R语言数据操作

    列合并 行合并 数据排序 两数据的交集,并集,补集 交集 并集 判断不同 判断是否相同 行名重复解决办法 处理一些...

  • 杂记小知识

    获取授权通知 iOS系统版本判断 OC *Swift

网友评论

      本文标题:Swift时间交集判断

      本文链接:https://www.haomeiwen.com/subject/lwfqrdtx.html