我尝试计算不包括周末的某个范围之间的天数。我现在得到的代码只排除了星期六,但不排除星期日。例如,当开始和结束日期为2022年9月24日时,我的代码返回1而不是0(星期六)和2022年9月25日(星期日)。同样,2022年9月25日(星期日)和2022年9月26日(星期一)应返回1,但返回2。
下面是我的代码:
String method(String start, String end) {
int a = 1;
DateTime startDate = DateTime.parse(start);
DateTime endDate = DateTime.parse(end);
while (startDate.isBefore(endDate)) {
startDate = startDate.add(const Duration(days: 1));
if (startDate.weekday != DateTime.saturday &&
startDate.weekday != DateTime.sunday) {
a++;
}
}
print('COUNT: $start :: $end $a');
return a.toString();
}
任何帮助都将不胜感激!
1条答案
按热度按时间brccelvz1#
您没有注意到
a
!您已经初始化了a = 1
,但在本例中它必须是0
。因此它总是多返回一天。