一、获取当前年份
在Java中获取当前年份可以使用Calendar类或者LocalDate类的getYear()方法。下面是两种方法的示例代码:
//使用Calendar类 Calendar calendar = Calendar.getInstance(); int year = calendar.get(Calendar.YEAR); //使用LocalDate类 LocalDate localDate = LocalDate.now(); int year = localDate.getYear();
以上两种方法都可以获取当前年份并存储在变量year中,其中Calendar类是早期Java提供的方式,而LocalDate是Java 8中新添加的Date-Time API中的类。
二、获取指定日期的年份
如果要获取指定日期的年份,可以使用Calendar类或者LocalDate类的withYear()方法。下面是两种方法的示例代码:
//使用Calendar类 Calendar calendar = Calendar.getInstance(); calendar.setTime(date); int year = calendar.get(Calendar.YEAR); //使用LocalDate类 LocalDate localDate = LocalDate.of(2022,1,15); int year = localDate.getYear();
以上两种方法都可以获取指定日期的年份并存储在变量year中,其中Calendar类需要先通过setTime()方法设置需要获取年份的日期,而LocalDate类则直接通过of()方法创建指定日期的对象。
三、获取当前日期所属的年份范围
有时候我们需要获取当前日期所属的年份范围,例如当前为2022年5月15日,则可以得到2022年的起始日期和结束日期。下面是一个示例代码:
LocalDate localDate = LocalDate.now(); LocalDate firstDayOfYear = localDate.with(TemporalAdjusters.firstDayOfYear()); LocalDate lastDayOfYear = localDate.with(TemporalAdjusters.lastDayOfYear()); System.out.println("当前日期所属年份的起始日期:" + firstDayOfYear); System.out.println("当前日期所属年份的结束日期:" + lastDayOfYear);
以上代码首先使用LocalDate类获取当前日期,接着通过with()方法结合TemporalAdjusters类的firstDayOfYear()和lastDayOfYear()方法获取当前日期所属年份的起始日期和结束日期,并输出到控制台。
四、获取当前日期所属的季度
类似于获取当前日期所属的年份范围,我们有时候也需要获取当前日期所属的季度。可以使用LocalDate类结合TemporalAdjusters类的with()方法和plus()方法,自定义获取季度的方法。下面是示例代码:
public static int getQuarter(LocalDate localDate){ int month = localDate.getMonthValue(); if (month <= 3){ return 1; }else if (month <= 6){ return 2; }else if (month <= 9){ return 3; }else{ return 4; } } LocalDate localDate = LocalDate.now(); int quarter = getQuarter(localDate); System.out.println("当前日期所属季度:" + quarter);
以上代码定义了一个getQuarter()方法,该方法根据当前日期获取所属的季度。获取季度的方法是根据月份进行判断,返回对应的季度数字。最后使用当前日期作为参数调用getQuarter()方法获取当前日期所属的季度,并输出到控制台。