datetime.AddDays(1)注意点

想给循环日期,然后每天都做些什么,就要用到.AddDays(1)方法。如下代码:

DateTime st = new DateTime(2021, 3, 10, 9, 0, 0);
while (st < new DateTime(2021, 4, 10, 9, 0, 0)) {
    // 做点什么
    st.AddDays(1)
}

如上代码:本想着循环到4月1号就跳出循环,结果是一个死循环

因为虽然做了st.AddDays(1)的操作,但是st本身的值并没有改变,一直都是3月10号这一天,所以就一直循环下去。

要先跳出循环,要给自己赋值一个新值才行,如下代码:

DateTime st = new DateTime(2021, 3, 10, 9, 0, 0);
while (st < new DateTime(2021, 4, 10, 9, 0, 0)) {
    // 做点什么
    st=st.AddDays(1)
}

这样,st的值才会更新

参考:https://zhidao.baidu.com/question/213554793.html

posted @ 2021-03-05 14:25  masha2017  阅读(707)  评论(0编辑  收藏  举报