首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

从上午9点到下午11点获取一天中的所有时间(以日期格式),并保存在Swift中的数组中

从上午9点到下午11点获取一天中的所有时间(以日期格式),并保存在Swift中的数组中,可以使用以下代码实现:

代码语言:txt
复制
import Foundation

let calendar = Calendar.current
var allTimes = [Date]()

let startDate = calendar.date(bySettingHour: 9, minute: 0, second: 0, of: Date())!
let endDate = calendar.date(bySettingHour: 23, minute: 0, second: 0, of: Date())!

var currentDate = startDate

while currentDate <= endDate {
    allTimes.append(currentDate)
    currentDate = calendar.date(byAdding: .hour, value: 1, to: currentDate)!
}

// 打印所有时间
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss"

for time in allTimes {
    let formattedTime = dateFormatter.string(from: time)
    print(formattedTime)
}

上述代码中,首先使用Calendar.current获取当前的日历对象。然后,通过calendar.date(bySettingHour:minute:second:of:)方法设置起始时间为上午9点和结束时间为下午11点。接下来,使用一个循环从起始时间开始,每次增加1小时,直到达到结束时间为止。在每次循环中,将当前时间添加到allTimes数组中。最后,使用DateFormatter将日期格式化为字符串,并打印出来。

请注意,这只是一个示例代码,用于演示如何获取一天中的所有时间,并保存在Swift数组中。在实际应用中,您可能需要根据具体需求进行适当的调整和优化。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

quartz任务调度器规则说明

,还可使用一些特殊字符,提供列表、范围、通配符等功能,细说如下: ●星号(*):可用在所有字段,表示对应时间每一个时刻,例如,*在分钟字段时,表示“每分钟”; ●问号(?)...L在日期字段,表示这个月份最后一天,如一月31号,非闰年二月28号;如果L用在星期中,则表示星期六,等同于7。...它意思是计划所关联日期,如果日期没有被关联,则相当于日历中所有日期。例如5C在日期字段中就相当于日历5日以后一天。1C在星期字段相当于星期日后一天。...在每天下午2点到下午2:59期间每1分钟触发 0 30 9 1 * ? 每月1号上午9点半 0 15 10 15 * ? 每月15日上午10:15触发 */5 * * * * ?...在每天下午2点到2:55期间和下午6点到6:55期间每5分钟触发 0 0/30 9-17 * * ? 朝九晚五工作时间内每半小时 0 0 10,14,16 * * ?

46530

cron 表达式详解

cron表达式详解   Cron表达式是一个字符串,字符串5或6个空格隔开,分为6或7个域,每一个域代表一个含义,Cron有如下两种语法格式:   (1) Seconds Minutes Hours...例如在Minutes域使用5-20,表示5分到20分钟每分钟触发一次   (4)/:表示起始时间开始触发,然后每隔固定时间触发一次。...每天上午10点,下午2点,4点   (5)0 0/30 9-17 * * ? 朝九晚五工作时间内每半小时   (6)0 0 12 ?...在每天下午2点到2:55期间和下午6点到6:55期间每5分钟触发   (15)0 0-5 14 * * ? 在每天下午2点到下午2:05期间每1分钟触发   (16)0 10,44 14 ?...在天(月)子表达式,“L”表示一个月最后一天   在天(星期)自表达式,“L”表示一个星期最后一天,也就是SAT   如果在“L”前有具体内容,它就具有其他含义了   例如:“6L”表示这个月倒数第

6.8K10

Jenkins环境配置定时构建

由于"月份日期"和"星期中日期"这两个元素互斥,必须要对其中一个设置? 0 0 10,14,16 * * ?     ...//每天上午10点,下午2点,4点 0 0/30 9-17 * * ?      //朝九晚五工作时间内每半小时 0 0 12 ?...//在每天下午2点到2:55期间和下午6点到6:55期间每5分钟触发 "0 0-5 14 * * ?"           ...,SAT" "*"字符代表所有可能值 因此,"*"在子表达式(月)里表示每个月含义,"*"在子表达式(天(星期))表示星期一天 "/"字符用来指定数值增量 例如:在子表达式(分钟)里...在天(月)子表达式,"L"表示一个月最后一天 在天(星期)自表达式,"L"表示一个星期最后一天,也就是SAT 如果在"L"前有具体内容,它就具有其他含义了 例如:"6L"表示这个月倒数第

1.9K30

Cron表达式详细介绍

例如在Minutes域使用5-20,表示5分到20分钟每分钟触发一次   (4)/:表示起始时间开始触发,然后每隔固定时间触发一次。...每天上午10点,下午2点,4点 (5) 0 0/30 9-17 * * ? 朝九晚五工作时间内每半小时 (6) 0 0 12 ?...在每天下午2点到2:55期间和下午6点到6:55期间每5分钟触发 (15) 0 0-5 14 * * ? 在每天下午2点到下午2:05期间每1分钟触发 (16) 0 10,44 14 ?...,SAT” “*”字符代表所有可能值   因此,“”在子表达式(月)里表示每个月含义,“”在子表达式(天(星期))表示星期一天   “/”字符用来指定数值增量   例如:在子表达式(分钟)里...在天(月)子表达式,“L”表示一个月最后一天   在天(星期)自表达式,“L”表示一个星期最后一天,也就是SAT   如果在“L”前有具体内容,它就具有其他含义了   例如:“6L”表示这个月倒数第

52420

Quartzcron表达式

由于月份日期和星期中日期这两个元素互斥,必须要对其中一个设置? 例如: 0 0 10,14,16 * * ? 每天上午10点,下午2点,4点 0 0/30 9-17 * * ?...在天(月)子表达式,“L”表示一个月最后一天 ; 在天(星期)自表达式,“L”表示一个星期最后一天,也就是SAT 如果在“L”前有具体内容,它就具有其他含义了 例如:“6L”...2005" 2005年每天上午10:15触发 "0 * 14 * * ?" 在每天下午2点到下午2:59期间每1分钟触发 "0 0/5 14 * * ?"...在每天下午2点到下午2:55期间每5分钟触发 "0 0/5 14,18 * * ?" 在每天下午2点到2:55期间和下午6点到6:55期间每5分钟触发 "0 0-5 14 * * ?"...如果指定日期存在,触发器就不会触发。 C 指和calendar联系后计算过值。

2.1K30

Spring Boot @Scheduled 定时任务实战

由于"月份日期"和"星期中日期"这两个元素互斥,必须要对其中一个设置?. 0 0 10,14,16 * * ? 每天上午10点,下午2点,4点 0 0/30 9-17 * * ?...2005" 2005年每天上午10:15触发 "0 * 14 * * ?" 在每天下午2点到下午2:59期间每1分钟触发 "0 0/5 14 * * ?"...在每天下午2点到下午2:55期间每5分钟触发 "0 0/5 14,18 * * ?" 在每天下午2点到2:55期间和下午6点到6:55期间每5分钟触发 "0 0-5 14 * * ?"...* 6#3" 每月第三个星期五上午10:15触发 有些子表达式能包含一些范围或列表 “*”字符代表所有可能值 因此,“*”在子表达式(月)里表示每个月含义,“*”在子表达式(天(星期))表示星期一天...在天(月)子表达式,“L”表示一个月最后一天 在天(星期)自表达式,“L”表示一个星期最后一天,也就是SAT 如果在“L”前有具体内容,它就具有其他含义了 例如:“6L”表示这个月倒数第6

1.1K10

cron表达式详解

由于月份日期和星期中日期这两个元素互斥,必须要对其中一个设置? 0 0 10,14,16 * * ? 每天上午10点,下午2点,4点 0 0/30 9-17 * * ?...2005" 2005年每天上午10:15触发 "0 * 14 * * ?" 在每天下午2点到下午2:59期间每1分钟触发 "0 0/5 14 * * ?"...在每天下午2点到下午2:55期间每5分钟触发 "0 0/5 14,18 * * ?" 在每天下午2点到2:55期间和下午6点到6:55期间每5分钟触发 "0 0-5 14 * * ?"...在每天下午2点到下午2:05期间每1分钟触发 "0 10,44 14 ? 3 WED" 每年三月星期三下午2:10和2:44触发 "0 15 10 ?...在天(月)子表达式,L表示一个月最后一天 在天(星期)自表达式,L表示一个星期最后一天,也就是SAT 如果在L前有具体内容,它就具有其他含义了 例如:6L表示这个月倒数第6天,FRIL表示这个月最一个星期五

1.8K10

玩转命令行之cron表达式

cron语法 Cron表达式是一个字符串,字符串5或6个空格隔开,分为6或7个域,每一个域代表一个含义,Cron有如下两种语法格式: (1) Seconds Minutes Hours DayofMonth...每天上午10点,下午2点,4点 (5)0 0/30 9-17 * * ? 朝九晚五工作时间内每半小时 (6)0 0 12 ?...在每天下午2点到下午2:59期间每1分钟触发 (13)0 0/5 14 * * ? 在每天下午2点到下午2:55期间每5分钟触发 (14)0 0/5 14,18 * * ?...在每天下午2点到2:55期间和下午6点到6:55期间每5分钟触发 (15)0 0-5 14 * * ? 在每天下午2点到下午2:05期间每1分钟触发 (16)0 10,44 14 ?...在天(月)子表达式,“L”表示一个月最后一天    在天(星期)自表达式,“L”表示一个星期最后一天,也就是SAT   如果在“L”前有具体内容,它就具有其他含义了   例如:

54920

spring如何设置定时任务详解(@Scheduled)

“C”:代表“Calendar”意思。它意思是计划所关联日期,如果日期没有被关联,则相当于日历中所有日期。例如5C在日期字段中就相当于日历5日以后一天。...1C在星期字段相当于星期日后一天。 3.4:一些小案例: “0 0 10,14,16 * * ?” 每天上午10点,下午2点,4点 “0 0/30 9-17 * * ?”...2005” 2005年每天上午10:15触发 “0 * 14 * * ?” 在每天下午2点到下午2:59期间每1分钟触发 “0 0/5 14 * * ?”...在每天下午2点到2:55期间和下午6点到6:55期间每5分钟触发 “0 0-5 14 * * ?” 在每天下午2点到下午2:05期间每1分钟触发 “0 10,44 14 ?...通过processScheduled方法将所有定时方法存放在Set tasks = new LinkedHashSet(4); 定时任务队列解析相应参数。顺序存放,任务也是顺序执行。

20.9K34

corn表达式 具体详解与案例

目录 1 Cron表达式格式 2 秒 3 分钟 4 小时 5 月份 6 星期 7 年份 8 特殊字符 9 表达式举例 1 Cron表达式格式 {秒数} {分钟} {小时} {日期} {月份} {星期...来实现互斥, 表达无意义信息之外,其他占位符都要具有具体时间含义, 且依赖关系为:年->月->日期(星期)->小时->分钟->秒数 8 特殊字符 “*” “*”字符被用来指定所有的值。...如:日期域是“5C”表示关联“日历”一天, 或者这个月开始一天后5天。 星期域是“1C”表示关联“日历”一天, 或者星期一天后1天,也就是周日一天(周一)。...在每天下午2点到下午2:59期间每1分钟触发 "0 0/5 14 * * ?" 在每天下午2点到下午2:55期间每5分钟触发 "0 0/5 14,18 * * ?"...在每天下午2点到2:55期间和下午6点到6:55期间每5分钟触发 "0 0-5 14 * * ?" 在每天下午2点到下午2:05期间每1分钟触发 "0 10,44 14 ?

1.4K20

任务调度SpringTask

Cron表达式 1 Cron表达式格式 Cron表达式是一个字符串,字符串5或6个空格隔开,分为6或7个域,每一个域代表一个含义,Cron有如下两种语法格式: (1)Seconds Minutes...例如在4#2,表示某月第二个星期三。 2 Cron表达式例子 0 0 10,14,16 * * ? 每天上午10点,下午2点,4点 0 0/30 9-17 * * ?...2005" 2005年每天上午10:15触发 "0 * 14 * * ?" 在每天下午2点到下午2:59期间每1分钟触发 "0 0/5 14 * * ?"...在每天下午2点到下午2:55期间每5分钟触发 "0 0/5 14,18 * * ?" 在每天下午2点到2:55期间和下午6点到6:55期间每5分钟触发 "0 0-5 14 * * ?"...* 6#3" 每月第三个星期五上午10:15触发 秒杀商品列表增量更新 每分钟执行查询秒杀商品表,将符合条件记录并且缓存存在秒杀商品存入缓存 /** * 刷新秒杀商品 */ @Scheduled

1K30

技术汇总:第九章:任务调度SpringTask

Cron表达式 Cron表达式格式 Cron表达式是一个字符串,字符串5或6个空格隔开,分为6或7个域,每一个域代表一个含义,Cron有如下两种语法格式: (1)Seconds Minutes Hours...例如在4#2,表示某月第二个星期三。 Cron表达式例子 0 0 10,14,16 * * ? 每天上午10点,下午2点,4点 0 0/30 9-17 * * ?...2005" 2005年每天上午10:15触发 "0 * 14 * * ?" 在每天下午2点到下午2:59期间每1分钟触发 "0 0/5 14 * * ?"...在每天下午2点到下午2:55期间每5分钟触发 "0 0/5 14,18 * * ?" 在每天下午2点到2:55期间和下午6点到6:55期间每5分钟触发 "0 0-5 14 * * ?"...* 6#3" 每月第三个星期五上午10:15触发 秒杀商品列表增量更新 每分钟执行查询秒杀商品表,将符合条件记录并且缓存存在秒杀商品存入缓存 /** * 刷新秒杀商品 */@Scheduled

18720

用Spring Task实现一个简单定时器.

今天做一个项目的时候需要用到定时器功能. 具体需求是: 每个月一号触发一次某个类方法去拉取别人接口获取上一个月份车险过期用户....由于"月份日期"和"星期中日期"这两个元素互斥,必须要对其中一个设置?. 0 0 10,14,16 * * ? 每天上午10点,下午2点,4点 0 0/30 9-17 * * ?...2016" 2016年每天上午10:15触发 "0 * 14 * * ?" 在每天下午2点到下午2:59期间每1分钟触发 "0 0/5 14 * * ?"...在每天下午2点到下午2:55期间每5分钟触发 "0 0/5 14,18 * * ?" 在每天下午2点到2:55期间和下午6点到6:55期间每5分钟触发 "0 0-5 14 * * ?"...“*”字符代表所有可能值 因此,“*”在子表达式(月)里表示每个月含义,“*”在子表达式(天(星期))表示星期一天 “/”字符用来指定数值增量 例如:在子表达式(分钟)里“0/15”表示

1.2K80

用Spring Task实现一个简单定时器.

今天做一个项目的时候需要用到定时器功能. 具体需求是: 每个月一号触发一次某个类方法去拉取别人接口获取上一个月份车险过期用户....由于"月份日期"和"星期中日期"这两个元素互斥,必须要对其中一个设置?. 0 0 10,14,16 * * ? 每天上午10点,下午2点,4点 0 0/30 9-17 * * ?...2016" 2016年每天上午10:15触发 "0 * 14 * * ?" 在每天下午2点到下午2:59期间每1分钟触发 "0 0/5 14 * * ?"...在每天下午2点到下午2:55期间每5分钟触发 "0 0/5 14,18 * * ?" 在每天下午2点到2:55期间和下午6点到6:55期间每5分钟触发 "0 0-5 14 * * ?"...“*”字符代表所有可能值 因此,“*”在子表达式(月)里表示每个月含义,“*”在子表达式(天(星期))表示星期一天 “/”字符用来指定数值增量 例如:在子表达式(分钟)里“0/15”表示

1.1K20

摆脱定时任务cron表达式困扰

*"字符代表所有可能值.       例如,"*"在子表达式(月)里表示每个月含义,"*"在子表达式(天(星期))表示星期一天.     2."/"字符用来指定数值增量.       ...在天(星期)自表达式,"L"表示一个星期最后一天,也就是SAT.       ...每天上午10点,下午2点,4点.     2."0 0/30 9-17 * * ?"  朝九晚五工作时间内每半小时.     3."0 0 12 ?...在每天下午2点到2:55期间和下午6点到6:55期间每5分钟触发      12."0 0-5 14 * * ?" ...* 6#3" 每月第三个星期五上午10:15触发 到这里,我们介绍完了Spring定时任务cron表达式所有内容。

48410

Spring Boot 如何快速实现定时任务

fixedDelay 表示任务执行之间时间间隔,具体是指本次任务结束到下次任务开始之间时间间隔。 initialDelay 表示首次任务启动延迟时间所有时间单位都是毫秒。...cron 表达式格式如下: [秒] [分] [小时] [日] [月] [周] [年] 具体取值如下: ? 这一块需要大家注意是,月份日期和星期可能会起冲突,因此在配置时这两个得有一个是 ?...表示不指定值,即不关心某个字段取值时使用。需要注意是,月份日期和星期可能会起冲突,因此在配置时这两个得有一个是 ?...2005” 2005年每天上午10:15触发 “0 * 14 * * ?” 在每天下午2点到下午2:59期间每1分钟触发 “0 0/5 14 * * ?”...在每天下午2点到下午2:55期间每5分钟触发 “0 0/5 14,18 * * ?” 在每天下午2点到2:55期间和下午6点到6:55期间每5分钟触发 “0 0-5 14 * * ?”

57710
领券