Что лучший способ состоит в том, чтобы определить если Система. DateTime является полуночью?

Существует метод zfill:

print(String.zfill(flagZero + len(String)))

Вывод:

00042
22
задан Eric Weilnau 25 March 2009 в 13:13
поделиться

3 ответа

Я проверил бы (использующий C# для примера):

bool isMidnight = value.TimeOfDay.Ticks == 0;

IMO, это легче, чем использование FromHours и т.д., и не включает дополнительного умножения (так как Ticks определенный TimeSpan - все другие свойства вычисляются).

45
ответ дан 29 November 2019 в 03:58
поделиться

Это - немного микрооптимизации, любой метод хорошо работал бы.

Во всяком случае я думаю, что это - то, что работало бы лучше всего:

Public Function IsMidnight(ByVal value As Date) As Boolean
   Return value.TimeOfDay.Ticks = 0
End Function

Если Вы хотите понятный код, возможно, это является лучшим:

Public Function IsMidnight(ByVal value As Date) As Boolean
   Return value.TimeOfDay = TimeSpan.Zero
End Function
7
ответ дан 29 November 2019 в 03:58
поделиться

Зависит. Вы хотите проверить в течение точно полуночи к второму, или просто что это - полуночный час?

В течение полуночного часа

Public Function IsMidnightHour(ByVal date as Date) As Boolean
  return date.Hour = 0
End Function

В течение полуночного часа и минуты

Public Function IsMidnightHourAndMinute(ByVal date as Date) As Boolean
  return date.Hour = 0 AndAlso date.Minute = 0
End Function

Для просто просто, точно полночь можно использовать пример. Однако это будет включать проверки до миллисекунды, которая не может быть тем, что Вы хотите.

5
ответ дан 29 November 2019 в 03:58
поделиться
Другие вопросы по тегам:

Похожие вопросы: