#c#
#c#
Вопрос:
Это не вопрос кодирования, это скорее общий вопрос об объекте TimeSpan в C #. Одним из методов временного интервала является Duration().
Per MSDN, this method provides another TimeSpan object that contains the timespan as an absolute value.
Я не понимаю, что означает абсолютное значение в этом случае. Когда я печатаю абсолютное значение, я получаю 736179.14: 46:32.5485475. Я пытаюсь понять, что означает абсолютное значение временного интервала, чтобы я мог перевести это значение в соответствующую переменную double.
Комментарии:
1. Абсолютное значение обычно означает «расстояние от нуля» независимо от положительного или отрицательного направления. Что происходит, когда вы вызываете это свойство на отрицательном временном интервале?
2. Да, я чувствую, что пример в документах довольно ясен..
3. В документации есть примеры, которые кажутся мне довольно понятными — точно так же, как действительные числа, это превращает «отрицательный» временной интервал (время начала после времени окончания) в положительный.
4. Например, DateTime — это один момент времени. Временной интервал — это отрезок времени, но он может быть отрицательным.
DateTime.Now() - DateTime.Now().AddDays(1)
выдает результат «отрицательный 1 день» и"negative 1 days".Duration()
выдает результат «1 день».5. Если вам нужно единственное
double
значение, тогдаTotalDays
похоже, что вы хотите.
Ответ №1:
Абсолютное значение означает расстояние от нуля без учета знака числа. Итак, -4 имеет абсолютное значение 4.
Ваш номер: 736179.14:46:32.5485475 является абсолютным значением a Duration
.
Оно представлено в следующем формате (который, я полагаю, вас смущает):
Дни.Часы: Минуты: секунды.Доли секунды
736179 days
14 hours
46 minutes
32 seconds
5485475 Fractions of a second
Комментарии:
1. Я немного запутался, поэтому удалил этот комментарий.. Если это ровно 3 знака после запятой, то это «миллисекунды», .333 — это «333 миллисекунды», ровно 6 — это микросекунды и т.д… Это ровно 7 знаков после запятой, у которых нет префикса .. поэтому я бы просто назвал это дробными секундами. .333 технически составляет как «333 миллисекунды», так и «.333» доли секунды, я полагаю..
2. @Quantic Right, при создании
Duration
4-й параметр принимается за миллисекунды, но отображается как доли секунды.