得到两个工作日之间的天差 [英] Get difference in days between two weekdays

查看:157
本文介绍了得到两个工作日之间的天差的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这听起来很容易,但我不明白这一点。

This sounds very easy, but i don't get the point.

那么,什么是获得之间的天数最简单的方法两个 DayOfWeeks 时,第一个是起点?如果下一个工作日较早,它应该被认为是在未来的周

So what's the easiest way to get number of days between two DayOfWeeks when the first one is the starting point? If the next weekday is earlier, it should considered to be in the next week.

一周中的某天枚举周日(0)和结束周六(6)

 1. Monday    = 1
 2. Thursday  = 4

Result: 4 - 1 = 3

 1. Thursday  = 4
 2. Monday    = 1
// obviously a Math.Abs is helpful
Result: Math.Abs(1 - 4) = 3

但这个结果是错误的,因为有周四和周一(下周)。

But this result is wrong because there are 4 days between Thursday and Monday(next week).

推荐答案

添加7,那么mod7:

Add 7, then mod 7:

(7 + (1 - 4)) % 7

例如:

var weekDay1  = DayOfWeek.Thursday;
var weeekDay2 = DayOfWeek.Monday;
var daysDiff  = (7 + (weeekDay2 - weekDay1)) % 7;

这篇关于得到两个工作日之间的天差的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆