的answer by Guy是正确的。
为了好玩,我做了相同类型的代码,但使用了2.3库。
我的代码假设你真的只需要时间,没有日期。因此,您将无法处理夏令时或其他问题。
// © 2013 Basil Bourque. This source code may be used freely forever by anyone taking full responsibility for doing so.
// import org.joda.time.*;
// import org.joda.time.format.*;
DateTimeFormatter formatter = DateTimeFormat.forPattern("hh:mm a");
// LocalTime time = formatter.parseLocalTime("4:05 PM");
// Create a list of org.joda.time.LocalTime instances, created by parsing strings.
List list = new ArrayList(7);
list.add(formatter.parseLocalTime("4:05 AM"));
list.add(formatter.parseLocalTime("5:04 PM"));
list.add(formatter.parseLocalTime("6:04 AM"));
list.add(formatter.parseLocalTime("4:05 PM"));
list.add(formatter.parseLocalTime("5:04 AM"));
list.add(formatter.parseLocalTime("12:01 AM"));
list.add(formatter.parseLocalTime("12:01 PM"));
System.out.println("Unsorted: " + Arrays.toString(list.toArray()));
// Sort that list.
Collections.sort(list);
System.out.println("Sorted: " + Arrays.toString(list.toArray()));
当运行...
Unsorted: [04:05:00.000, 17:04:00.000, 06:04:00.000, 16:05:00.000, 05:04:00.000, 00:01:00.000, 12:01:00.000]
Sorted: [00:01:00.000, 04:05:00.000, 05:04:00.000, 06:04:00.000, 12:01:00.000, 16:05:00.000, 17:04:00.000]
如果您需要的输出值再次为AM/PM格式,搜索StackOverflow.com使用格式化的乔达时间创建的字符串的例子(”打印“方法)。
您发布了一个小时或2个以前的完全相同的问题。我告诉过你用相关语言标记它,但看起来你已经删除了它并转发了它。请标记你的问题! –
这不是一种语言 - 总是用一种语言来标记你的问题,例如, C,C++,C#,VB,JS,Java,PHP等 –
干得好。你的问题现在会得到更多的曝光。 –