java 获取包含当前日期到本月月初的日期string类型数组按日期顺序排列
以下是一个示例代码,可以获取包含当前日期到本月月初的日期,并按日期顺序排列为字符串数组:
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class Main {
public static void main(String[] args) {
LocalDate currentDate = LocalDate.now();
LocalDate firstDayOfMonth = currentDate.withDayOfMonth(1);
List<String> dates = new ArrayList<>();
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
LocalDate date = currentDate;
while (date.isAfter(firstDayOfMonth) || date.isEqual(firstDayOfMonth)) {
dates.add(date.format(formatter));
date = date.minusDays(1);
}
Collections.reverse(dates);
String[] dateArray = dates.toArray(new String[0]);
for (String dateStr : dateArray) {
System.out.println(dateStr);
}
}
}
这段代码首先获取当前日期和本月的第一天,并创建一个空的字符串列表。然后使用DateTimeFormatter定义日期格式。
接下来,使用一个循环,从当前日期开始,逐步往前推算,直到到达本月的第一天。在每个循环中,将日期格式化为字符串,并添加到列表中。
最后,使用Collections.reverse()方法将列表中的日期顺序反转,以确保日期按顺序排列。
最后,将字符串列表转换为字符串数组,并遍历输出每个日期字符串
原文地址: https://www.cveoy.top/t/topic/hXAQ 著作权归作者所有。请勿转载和采集!