首页 > 解决方案 > 从 9 月到 8 月需要在列表中存储月份名称

问题描述

我想将月份名称存储在一个列表中,即从 9 月到 8 月,我在这里找到了一个代码,用于将月份名称存储在列表中,但不知道如何从 9 月到 8 月存储它。我尝试将最后一个元素移动到在 GeeksForGeeks算法链接上找到的给定链接列表算法的前面,但这并没有按我的意愿工作。

我正在使用的代码:

    private void monthList () {
        List<String> listOfMonth = new LinkedList<>();
        String[] months = new DateFormatSymbols().getShortMonths();
        for (int i = 0; i < months.length; i++) {
            String month = months[i];
            //System.out.println("month = " + month);
            listOfMonth .add(months[i]);
            LinkedList list  = new LinkedList();

        }
        System.out.println(listOfMonth);
    }

问候

标签: java

解决方案


要获得一年中的月份,使用 Java 8+ 移动 8 个月:

List<String> listOfMonth = new ArrayList<>();
for (int m = 0; m < 12; m++)
    listOfMonth.add(Month.of((m + 8) % 12 + 1).getDisplayName(TextStyle.FULL, Locale.US));
System.out.println(listOfMonth);

输出

[September, October, November, December, January, February, March, April, May, June, July, August]

进口

import java.time.Month;
import java.time.format.TextStyle;
import java.util.ArrayList;
import java.util.List;
import java.util.Locale;

推荐阅读