我是Java新手,正在从事Java 8的工作。
我正在尝试将LocalDateTime对象转换为LocalDateTime,但在不将其转换为String的情况下找不到任何方法。当底层对象类型为LocalDateTime时,有没有直接将Object转换为LocalDateTime的方法?
此外,如果有任何转换方法,那么它是否也适用于底层字符串类型LocalDateTime对象?
下面是我当前的代码,它先将对象转换为字符串,然后再将其转换为LocalDateTime,因为LocalDateTime.parse方法需要字符串输入。
public static LocalDateTime toDateTime(Object dateTimeObject) {
LocalDateTime dateTime = LocalDateTime.parse(dateTimeObject.toString(), DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss"));
return dateTime;
}发布于 2020-08-17 19:33:05
如果对象是LocalDateTime,则可以强制转换该对象。
public static LocalDateTime toDateTime(Object dateTimeObject) {
if (dateTimeObject instanceof LocalDateTime) {
return (LocalDateTime) dateTimeObject;
}
return null;
}发布于 2020-08-17 18:24:28
根据Java 8 LocalDateTime API,没有接受对象参数并返回LocalDateTime的方法。但是有一个带有CharSequence参数的函数,这就是为什么当您将对象转换为字符串时它可以工作,而如果只传递object参数它就不能工作。如果您不想调用toString()方法,也许toDateTime(对象o)的参数应该是不同类型的。
https://stackoverflow.com/questions/63448852
复制相似问题