Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/323.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Java中如何使用AM和PM按降序对时间数组进行排序_Java - Fatal编程技术网

在Java中如何使用AM和PM按降序对时间数组进行排序

在Java中如何使用AM和PM按降序对时间数组进行排序,java,Java,我有一个数组列表如下 {"8:00 am", "8:32 am", "8:10 am", "1:00 pm", "3:00 pm", "2:00 pm"} {3:00 pm, 2:00 pm, 1:00 pm, 8:32 am, 8:10 am, 8:00 am} 我尝试使用集合排序,但无法获得所需的输出 我需要得到如下排序的输出 {"8:00 am", "8:32 am", "8:10 am", "1:00 pm", "3:00 pm", "2:00 pm"} {3:00 pm, 2

我有一个数组列表如下

 {"8:00 am", "8:32 am", "8:10 am", "1:00 pm", "3:00 pm", "2:00 pm"}
{3:00 pm, 2:00 pm, 1:00 pm, 8:32 am, 8:10 am, 8:00 am}
我尝试使用集合排序,但无法获得所需的输出 我需要得到如下排序的输出

 {"8:00 am", "8:32 am", "8:10 am", "1:00 pm", "3:00 pm", "2:00 pm"}
{3:00 pm, 2:00 pm, 1:00 pm, 8:32 am, 8:10 am, 8:00 am}
使用in将字符串解析为,以便它根据时间对数组进行排序

Arrays.sort(time, Comparator.comparing(str->LocalTime.parse(str.toUpperCase(),DateTimeFormatter.ofPattern("h:mm a"))));
如果需要降序,只需使用反向
比较器

Comparator.comparing((String str)->LocalTime.parse(str.toUpperCase(),DateTimeFormatter.ofPattern("h:mm a"))).reversed()
使用in将字符串解析为,以便它根据时间对数组进行排序

Arrays.sort(time, Comparator.comparing(str->LocalTime.parse(str.toUpperCase(),DateTimeFormatter.ofPattern("h:mm a"))));
如果需要降序,只需使用反向
比较器

Comparator.comparing((String str)->LocalTime.parse(str.toUpperCase(),DateTimeFormatter.ofPattern("h:mm a"))).reversed()

最好的方法是将字符串转换为LocalTime对象并使用它们。请在此处发布代码。它将帮助其他人轻松解决您的问题。您最好的方法是将字符串转换为LocalTime对象并使用它们。请在此处发布您的代码。它将帮助他人轻松解决您的问题。