Java 与日期格式相关的问题

Java 与日期格式相关的问题,java,simpledateformat,Java,Simpledateformat,嗨 我有两个不同格式的输入日期,所以请告诉我如何遍历它们 并使用if-else将其转换为新格式。 以下是我的意见: String first=“3月12日”; 字符串second=“2010年2月23日”; 我正在尝试将这些不同的格式转换成新的格式 我使用了以下代码: 现在我面临的问题是,我不知道如何使用if-else块将它们解析并转换为新格式。使用字符串长度/字符串中的空格来区分格式。[因为只有两种格式。]使用字符串长度/字符串中的空格来区分格式。[因为只有两种格式。]SimpleDataF

嗨 我有两个不同格式的输入日期,所以请告诉我如何遍历它们 并使用if-else将其转换为新格式。 以下是我的意见: String first=“3月12日”; 字符串second=“2010年2月23日”; 我正在尝试将这些不同的格式转换成新的格式

我使用了以下代码:

现在我面临的问题是,我不知道如何使用if-else块将它们解析并转换为新格式。

使用字符串长度/字符串中的空格来区分格式。[因为只有两种格式。]

使用字符串长度/字符串中的空格来区分格式。[因为只有两种格式。]
SimpleDataFormat.parse
在出现错误时返回null。所以,你可以这样做:

date = dateFormat1.parse(first, new ParsePosition(0));
if (date == null) {
  date = dateFormat2.parse(first, new ParsePosition(0));
}

SimpleDataFormat.parse
在出现错误时返回null。所以,你可以这样做:

date = dateFormat1.parse(first, new ParsePosition(0));
if (date == null) {
  date = dateFormat2.parse(first, new ParsePosition(0));
}

我编辑了我的答案,删除了最后一句话。这也让人困惑吗?如果是,我已经测试过,如果没有给出年份信息,那么解析的日期将放在0年。我已经编辑了我的答案,删除了最后一句话。这也让人困惑吗?如果是,我已经测试过,如果没有给出年份信息,那么解析的日期将放在0年。