java获取当前年所有月份数组

该代码段展示了如何使用Java的SimpleDateFormat类来获取当前年的所有月份,并将它们存储在一个Map对象的List中,键值对包括年月(yearmonth)和月份(month)。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

import java.text.SimpleDateFormat;

import java.util.*;

/*

* 获取当前年所有月份数组

* */

public static List get12month(){

List list =new ArrayList();

SimpleDateFormat fmt = new SimpleDateFormat("yyyy");

Date date = new Date();//获取当前时间

String year=fmt.format(date);

SimpleDateFormat fmt3 = new SimpleDateFormat("MM");

String month=fmt3.format(date);

int monthint=Integer.parseInt(month);

for(int i=1;i<=monthint;i++){

Map map=new HashMap();

String datatime="";

if(i<10){

datatime=year+"0"+i+"";

}else{

datatime=year+i+"";

}

map.put("yearmonth",datatime);

map.put("month",i);

list.add(map);

}

return list;

}

//测试

public static void main(String[] args) throws Exception {

List list=get12month();

for(int i=0;i<list.size();i++){

Map map=(Map)list.get(i);

System.out.println(map.get("yearmonth"));

System.out.println(map.get("month"));

}

}

输出结果

### Java 获取当前年份的方法 在 Java 中,可以通过多种方式来获取系统的当前年份。以下是几种常见的实现方法: #### 方法一:使用 `Calendar` 类 通过 `Calendar` 类可以方便地获取当前的年份信息。 ```java import java.util.Calendar; public class GetCurrentYear { public static void main(String[] args) { Calendar calendar = Calendar.getInstance(); int year = calendar.get(Calendar.YEAR); System.out.println("Current Year: " + year); } } ``` 上述代码利用了 `Calendar` 的实例化以及其内置的 `get()` 方法提取年份[^5]。 #### 方法二:使用 `LocalDateTime` 和 `Year` 类 (推荐用于 JDK 8 及以上版本) JDK 8 引入了新的日期时间 API (`java.time`),其中提供了更简洁的方式获取当前年份。 ```java import java.time.Year; import java.time.LocalDateTime; public class GetYearWithNewAPI { public static void main(String[] args) { // 使用 LocalDateTime 获取完整的日期时间并提取年份 int currentYearFromLDT = LocalDateTime.now().getYear(); // 或者直接使用 Year 类 int currentYearFromYearClass = Year.now().getValue(); System.out.println("Current Year from LocalDateTime: " + currentYearFromLDT); System.out.println("Current Year from Year Class: " + currentYearFromYearClass); } } ``` 此方法更加现代化且易于维护,适用于较新版本的 Java 环境[^1]。 #### 方法三:使用 `SimpleDateFormat` 虽然不建议将其作为首选方案,但仍然可以通过格式化字符串的方式来间接得到年份。 ```java import java.text.SimpleDateFormat; import java.util.Date; public class GetYearWithSDF { public static void main(String[] args) { SimpleDateFormat sdf = new SimpleDateFormat("yyyy"); String formattedYear = sdf.format(new Date()); System.out.println("Formatted Current Year: " + formattedYear); } } ``` 这种方法依赖于 `SimpleDateFormat` 对象对日期进行特定模式下的转换操作[^4]。 综上所述,在实际开发过程中应优先考虑采用最新标准库所提供的功能以提高程序可读性和效率。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

左手握着幸福8

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值