DateFormatSymbols().getShortWeekdays()返回工作日计为8

Ume*_*thi 7 java

我试图找到工作日使用DateFormatSymbols,这是一个简短的程序

String[] shortWeekdays = new DateFormatSymbols().getShortWeekdays();
        System.out.println(shortWeekdays.length);

        for (int i = 0; i < shortWeekdays.length; i++) {
            String shortWeekday = shortWeekdays[i];
            System.out.println("shortWeekday = " + shortWeekday);
        }
Run Code Online (Sandbox Code Playgroud)

而它正在给我提供输出

  • shortWeekday =
  • shortWeekday =太阳
  • shortWeekday =星期一
  • shortWeekday =星期二
  • shortWeekday =周三
  • shortWeekday =星期四
  • shortWeekday =周五
  • shortWeekday =周六

我不确定为什么它的总长度为8,而它应该给它为7

Jon*_*eet 10

值的范围Calendar.{SUNDAY, MONDAY, ... SUNDAY }是1-7.国家文件getShortWeekDays():

返回:短工作日字符串.使用Calendar.SUNDAY,Calendar.MONDAY等来索引结果数组.

所以我期望一个可以用值1-7索引的数组...这意味着它必须有8个元素(因为Java中的所有数组都是基于0的).

  • 只需使用`for(int i = 1; ...` (2认同)