java 获取包含当前日期月份 到本年年初的月份 string类型数组按日期顺序排列
你可以使用Calendar类来获取当前日期和年初的日期,然后使用SimpleDateFormat类将日期格式化为字符串,最后将这些字符串放入一个数组并按日期顺序排序。
以下是一个示例代码:
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Collections;
import java.util.List;
public class Main {
public static void main(String[] args) {
// 获取当前日期
Calendar calendar = Calendar.getInstance();
int currentMonth = calendar.get(Calendar.MONTH);
// 获取年初日期
calendar.set(Calendar.DAY_OF_YEAR, 1);
int startMonth = calendar.get(Calendar.MONTH);
// 创建日期格式化对象
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM");
// 创建存储月份字符串的列表
List<String> months = new ArrayList<>();
// 添加月份字符串到列表
for (int i = currentMonth; i >= startMonth; i--) {
calendar.set(Calendar.MONTH, i);
String monthString = dateFormat.format(calendar.getTime());
months.add(monthString);
}
// 按日期顺序排序
Collections.sort(months);
// 将月份字符串转为数组
String[] monthArray = months.toArray(new String[0]);
// 打印结果
for (String month : monthArray) {
System.out.println(month);
}
}
}
这段代码将输出包含当前日期月份到本年年初的月份字符串数组,按日期顺序排列
原文地址: https://www.cveoy.top/t/topic/hXBS 著作权归作者所有。请勿转载和采集!