如何比较两个cron表达式。我们有一个条件,比如我们需要比较两个cron表达式,并且需要检查两者是否相等例如:“0 0/11/1?*”=“0 0/1 * 1/1 * ? *" 然后我需要继续,否则需要抛出错误。
8mmmxcuj1#
这个问题是正确的,尽管这个例子不好。考虑以下情况:
cron1 = "* * * * MON"//unix cron2 = "*/1 * * * 1"//unix cron3= "0 * * * *"//unix cron4="0 * * * * MON *"//quartz //now we compare crons cron1.equivalent(cron2) -> true cron1.equivalent(cron3) -> false cron1.equivalent(cron4) -> true
如果您正在寻找一些允许您执行这种比较的库,那么可以看看cron utils解析cron表达式后,将创建cron对象,该对象具有比较cron的方法。
fnvucqvd2#
我想你可以这样说:
String str1 = "0 0/1 * 1/1 * ? *"; String str2 = "0 0/1 * 1/1 * ? *"; if (str1.equals(str2)) { // do what you want } else { throw new Exception("Strings do not match"); }
2条答案
按热度按时间8mmmxcuj1#
这个问题是正确的,尽管这个例子不好。考虑以下情况:
如果您正在寻找一些允许您执行这种比较的库,那么可以看看cron utils
解析cron表达式后,将创建cron对象,该对象具有比较cron的方法。
fnvucqvd2#
我想你可以这样说: