Java Date getDate() 已弃用,重构为使用日历但看起来很难看

标签 java date refactoring

Eclipse 警告我正在使用已弃用的方法:

eventDay = event.getEvent_s_date().getDate();

所以我改写成

eventDay = DateUtil.toCalendar(event.getEvent_s_date()).get(Calendar.DATE);

它似乎有效,但看起来很难看。我的问题是我重构这个是最好的方法吗?如果不是,你将如何重构?我需要存储在 bean 中的日期的天数。

我最终在我的 DateUtils 中添加了一个方法来清理它

eventDay = DateUtil.getIntDate(event.getEvent_s_date());

public static int getIntDate(Date date) {
    return DateUtil.toCalendar(date).get(Calendar.DATE);
}

最佳答案

没关系。对我来说,更丑的一点是方法名称中的下划线。 Java 约定不赞成那里的下划线。

您可能想看看 joda-time .这是处理日期/时间的事实标准:

new DateTime(date).getDayOfMonth();

关于Java Date getDate() 已弃用,重构为使用日历但看起来很难看,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3972568/

相关文章:

java - IWAB0399E 从 WSDL 生成 Java 时出错 : java. io.IOException:错误:缺少 <soap:fault> 元素 inFault

java - 如何将编辑文本中的第一个字母替换为自动编号

sql-server - SQL 将日期转换为 yyyy-mm-dd

sql-server - 区域日期格式和数据库日期格式的不同日期格式的 SQL Server 错误

ios - 使用 Swift 创建一个带 N 项的类型化数组

java - 在 Intellij IDEA 中将 Java 8 流降级为 Java 7 循环

java - 如何在代理后面使用 spring-security OAuth2,但仅将 ForwardedHeaderTransformer 用于 OAuth 组件

java - 如何使用 java 在 libvirt 中使用 Activity 域填充组合框

javascript - 我的变量为什么返回空?

php - 将日期转换为日和月(3 个字母)