разница между использованием временного интервала или целочисленного значения, представляющего временной интервал в c# - PullRequest
3 голосов
/ 10 апреля 2020

У меня есть код, в котором я вычисляю некоторые интервалы между датами, и для этого у меня есть определенный интервал времени, который я добавляю к одной дате, для этого я вижу 2 способа, но я не понимаю разницу, для меня они одинаковы:

var timespan = new TimeSpan(0, 0, 5);
var d1 = new DateTime(2010, 1, 1, 8, 0, 15);

var newDateWithTimeSpan = d1.Add(timespan);
var newDateWithSeconds = d1.AddSeconds(5);

Console.WriteLine(newDateWithTimeSpan);
Console.WriteLine(newDateWithSeconds);

1 Ответ

5 голосов
/ 10 апреля 2020

Нет, нет никакой разницы между двумя способами вычисления нового значения DateTime. Часто есть несколько способов выразить одно и то же намерение, особенно с помощью DateTime. (Например, вы могли бы использовать d1 + timespan в качестве другого варианта.)

Хотя это не фактическая реализация, вы можете представить , что AddSeconds реализован так:

public DateTime AddSeconds(double seconds) =>
    this.Add(TimeSpan.FromSeconds(seconds));

Это просто удобный метод.

Я бы сказал, что использование TimeSpan.FromSeconds в вашем коде - более понятный способ выражения «Я хочу создать TimeSpan, который представляет 5 секунд», но это немного отдельный вопрос.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...