Vad*_*nko 3 java sorting groovy
我有一个字符串列表,每个字符串都包含这样的时间:
"03:00 AM","12:30 PM","16:15"
我需要按顺序对它们进行排序:首先放"am"次并比较小时数,而不仅仅是字符串中的第一个数字.
tim*_*tes 13
这适用于groovy,包括你提供的所有情况:
List dates = [ "16:15", "12:30 PM", "07:00", "03:00 AM" ]
dates.sort { d ->
  [ 'h:mm a', 'H:mm' ].findResult { fmt ->
    try {
      Date.parse( fmt, d ).time
    } catch( e ) {}
  }
}
它基本上尝试使用AM/PM,如果失败则尝试不使用它