首页 > 解决方案 > 如何比较时间变量?

问题描述

我有 3 个日期时间类型或字符串类型的变量,格式为hh:mm:ss.

例如:

dT1="00:00:00"
dT2="20:59:59"
dT3="18:04:21" 

如何进行以下比较?

  dT1<= dT3 <= dT2 ??

标签: vb.net

解决方案


您的示例显示字符串而不是日期时间。我将您的字符串放入名为 TimeStrings 的数组中。然后我创建了一个时间跨度列表。遍历字符串,我在冒号上拆分每个字符串,然后创建一个新的 TimeSpan 并将其添加到列表中。我使用列表的 .Max 方法来获取列表中的最大值。

Private Sub OpCode()
    'Constructor TimeSpan(Int32, Int32, Int32)
    Dim dT1 = "00:00:00"
    Dim dT2 = "20:59:59"
    Dim dT3 = "18:04:21"
    Dim TimeStrings = {dT1, dT2, dT3}
    Dim Spans As New List(Of TimeSpan)
    For Each s In TimeStrings
        Dim Splits = s.Split(":"c)
        Dim span As New TimeSpan(CInt(Splits(0)), CInt(Splits(1)), CInt(Splits(2)))
        Spans.Add(span)
    Next
    Dim HighestValue = Spans.Max
    MessageBox.Show(HighestValue.ToString)
End Sub

推荐阅读