详情看以下代码:
package com.sunny.util;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
/**
* @PACKAGE_NAME: com.sunny.util
* @AUTHOR: SunYingTao
* @DATE: 2022/12/13 16:56
* @DESCRIPTION: Calendar日期工具类
*/
public class CalendarDemo {
public static void main(String[] args) {
//获取Calendar实例
Calendar calendar = Calendar.getInstance();
//获取当前年份
int year = calendar.get(Calendar.YEAR);
System.out.println("当前年份:"+year);
//获取当前月份,月份是从0开始的,所以要+1
int month = (calendar.get(Calendar.MONTH))+1;
System.out.println("当前月份"+month);
//获取当前几号
int day = calendar.get(Calendar.DAY_OF_MONTH);
System.out.println("当前几号:"+day);
//获取当前几号
int date = calendar.get(Calendar.DATE);
System.out.println("当前几号:"+day);
//获取当前多少分钟
int minute = calendar.get(Calendar.MINUTE);
System.out.println("当前分钟数:"+minute);
//获取当前小时,24小时制
int hour = calendar.get(Calendar.HOUR_OF_DAY);
System.out.println("获取当前小时,24小时制:"+hour);
//获取当前小时,12小时制
int hour1 = calendar.get(Calendar.HOUR);
System.out.println("获取当前小时,12小时制:"+hour1);
//获取当前秒
int second = calendar.get(Calendar.SECOND);
System.out.println("获取当前秒数:"+second);
//获取当前时间是上午还是下午,0是上午/1是下午
int ap = calendar.get(Calendar.AM_PM);
System.out.println("当前时间是:"+ (ap==0 ? "上午" : "下午"));
//获取当年的第几周
int week_of_year = calendar.get(Calendar.WEEK_OF_YEAR);
System.out.println("当年的第:" + week_of_year + "周");
//获取当月的星期数
int week_of_month = calendar.get(Calendar.WEEK_OF_MONTH);
System.out.println("当月的星期数:"+week_of_month);
//获取当月的第几个星期
int day_of_week_in_month = calendar.get(Calendar.DAY_OF_WEEK_IN_MONTH);
System.out.println("当月的第:" +day_of_week_in_month+ "个星期");
//获取当年的第几天
int day_of_year = calendar.get(Calendar.DAY_OF_YEAR);
System.out.println("当年的第:"+ day_of_year +"天");
//设置当月的月末
SimpleDateFormat simple = new SimpleDateFormat("yyyy-MM-dd");
//这个地方可以指定日期,用setTime,Calendar.getInstance();已经获取到了当前日期
Calendar calendar2 = Calendar.getInstance();
calendar2.setTime(new Date());
calendar2.add(Calendar.MONTH, 1);
calendar2.set(Calendar.DAY_OF_MONTH, 0);
String s = simple.format(calendar2.getTime());
System.out.println("当月的月末:"+s);
//设置当前月的月初
Calendar calendar3 = Calendar.getInstance();
calendar3.setTime(new Date());
calendar3.set(Calendar.DAY_OF_MONTH, 1);
String s2 = simple.format(calendar3.getTime());
System.out.println("当前月的月初:"+s2);
}
}
当前年份:2022
当前月份12
当前几号:13
当前几号:13
当前分钟数:31
获取当前小时,24小时制:17
获取当前小时,12小时制:5
获取当前秒数:36
当前时间是:下午
当年的第:51周
当月的星期数:3
当月的第:2个星期
当年的第:347天
当月的月末:2022-12-31
当前月的月初:2022-12-01
如有问题,欢迎指正~ 如能帮到您,欢迎点赞收藏~