gpt4 book ai didi

java - 对 Java Date 对象进行排序和比较会产生意外结果

转载 作者:行者123 更新时间:2023-12-01 15:30:00 25 4
gpt4 key购买 nike

我有许多 java Date 对象,我试图按日期升序对它们进行排序。

这些是使用英国格式“dd/mm/yy HH:ss”的简单日期格式化程序从 CSV 加载的,并以相同的格式输出,例如

new SimpleDateFormat("dd/mm/yy HH:ss", Locale.ENGLISH);

这可以正常工作。

但是,当我尝试对这些进行排序(通过实现比较器接口(interface))时,这些排序似乎以美国日期格式(mm/dd/yy)不正确。

    public int compare(CSVEntry t, CSVEntry t1) {
if (t.date.before(t1.date))
return -1;
else if (t.date.after(t1.date))
return 1;
else
return 0;
}

无论我使用什么方法(Date.after() 或 Date.before() 或 Date.compareTo),也无论区域设置如何。

我尝试使用以下方法设置系统默认本地:

Locale.setDefault(Locale.ENGLISH);

没有效果。

有什么想法吗?

最佳答案

"dd/mm/yy HH:ss"

mm 是一小时中的分钟。您可能正在寻找MM(一年中的月份)。

另外,HH:ss?不是 HH:mmHH:mm:ss

关于java - 对 Java Date 对象进行排序和比较会产生意外结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9651626/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com