我想答案是否定的。如果我使用 4 个或更多“M”,结果是一样的。
public static void main (String[] args)
{
for (int monthNum = 1; monthNum <= 12; monthNum++)
{
String month = new SimpleDateFormat("MMMM", Locale.US)
.format (new Date (1, monthNum, 2000));
String month2 = new SimpleDateFormat("MMMMM", Locale.US)
.format (new Date (1, monthNum, 2000));
if (month.equals(month2))
continue;
throw new RuntimeException ("");
}
}
顺利结束。
但是我不明白为什么使用的示例特别是SimpleDateFormat
5 'M' 而不是 4 或任何其他数字> = 4。在模式字符串中给出多个“M”的结果的唯一解释是:
月份:如果模式字母的个数为3个或更多,则将月份解释为文本;否则,它被解释为一个数字。
那有什么区别吗?为什么不能更好地记录?