日期时间AddMinutes方法无法正常工作

14

我的方法的目的是获取当前时间并将其设置回20分钟。据我所见,我的方法是正确的,但输出结果显示了其他内容。

这是我的代码:

DateTime currentTime = DateTime.Now;
double minuts = -20;
currentTime.AddMinutes(minuts);

Console.WriteLine("Nuværende tid: "+currentTime);

输出如下:

25-11-2011 14:01:54

我的结果应该是:

25-11-2011 13:41:54.
感谢!
6个回答

43

描述

AddMinutes函数返回一个DateTime。

DateTime.AddMinutes方法 返回一个新的DateTime,该新日期时间加上指定的分钟数。

示例

DateTime currentTime = DateTime.Now;
double minuts = -20;
currentTime = currentTime.AddMinutes(minuts);

Console.WriteLine("Nuværende tid: "+currentTime);

更多信息


是的,这就是为什么我讨厌那些可以调用返回值却不使用它的函数/方法的语言。它存在是有原因的 :-) - Ross Patterson
1
这不取决于语言,只取决于模式。您可以在任何编程语言中实现此操作。 - dknaack
2
你帮了我。是我太蠢了,忘记了Addminutes返回一个日期时间。 - Tri Nguyen Dung

4
...
currentTime = currentTime.AddMinutes(minuts); 
...

4

尝试:

currentTime = currentTime.AddMinutes(minuts);

3

DateTime是“不可变”的,这意味着您永远不能修改现有实例,只能创建新实例。字符串也是如此。因此,您需要使用AddMinutes调用的结果,该调用将使您的现有currentTime与应用minuts变量的结果相结合。

currentTime = currentTime.AddMinutes(minuts);

2

AddMinutes会返回一个新的DateTime对象,所以你需要:

    DateTime currentTime = DateTime.Now;
    double minuts = -20;
    DateTime newTime = currentTime.AddMinutes(minuts);

    Console.WriteLine("Nuværende tid: "+newTime);

-1
currentTime = DateTime.Now.AddMinutes(5.0f);

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接