java中 Calendar日历方法使用
Calendar 类
抽象类 Calendar 提供了一组方法,允许把以毫秒为单位的时间转换成一些有用的时间组成部分。Calendar 不能直接创建对象,但可以使用静态方法 getInstance() 获得代表当前日期的日历对象,如:
Calendar cal = Calendar.getInstance();
Calendar的常用属性
属性 | 作用 |
YEAR | 年份 |
MONTH | 月份 |
DATE | 同DAY_OF_MONTH,日期 |
DAY_OF_MONTH | 同DATE,日期 |
DAY_OF_YEAR | 这一天是这一年中的第几天 |
DAY_OF_WEEK_IN_MONTH | 当前月中的第几周 |
DAY_OF_WEEK | 一周中的第几天 / 星期 |
HOUR | 12小时制的时间 |
HOUR_OF_DAY | 24小时制的时间 |
MINUTE | 分钟数 |
SECOND | 秒数 |
MILLISECOND | 毫秒 |
Calendar的常用方法:
方法 | 效果 |
public static Calendar getInstance(TimeZone zone,Locale aLocale) | 获得一个日历对象 |
public int get(int field) | 传入field字段获得给定日历字段的值 |
public final void set(int year,int month,int date,int hourOfDay,int minute,int second) | 设置日历对象代表的时间 |
public final void setTime(Date date) | 使用给定的 Date 设置此 Calendar 的时间。 |
public void setTimeInMillis(long millis) | 用给定的 long 值设置此 Calendar 的当前时间值。 |
public final Date getTime() | 返回一个表示此 Calendar 时间值(从历元至现在的毫秒偏移量)的 Date 对象。 |
public long getTimeInMillis() | 返回此 Calendar 的时间值,以毫秒为单位。 |
public int getActualMaximum(int field) | 传入Calendar.Date,得到这个月可能有多少天 |
方法使用例子:
- @SneakyThrows
- public static void main(String[] args) {
-
- Calendar cal = Calendar.getInstance();
-
- System.out.println("cal.getTime():"+cal.getTime());
- // 获得年份
- System.out.println("现在是:"+(cal.get(Calendar.YEAR))+"年");
- // 获得月份
- System.out.println("现在是:"+(cal.get(Calendar.MONTH )+1)+"月");
- //获得日期
- System.out.println("现在是:"+ cal.get(Calendar.DATE)+ "号");
- System.out.println("现在是:" + (cal.get(Calendar.DAY_OF_MONTH))+"号");
-
- // 获得这是今年的第几天
- System.out.println("现在是第几:"+(cal.get(Calendar.DAY_OF_YEAR))+"天");
- // 获得今天周几
- System.out.println("现在是周:"+ (cal.get(Calendar.DAY_OF_WEEK)-1));
- // 获得今天是这个月的第几周
- System.out.println("现在是这个月第"+ cal.get(Calendar.DAY_OF_WEEK_IN_MONTH)+"周");
- // 12小时制的时间
- System.out.println("现在是:"+cal.get(Calendar.HOUR)+"点");
- // 24小时制的时间
- System.out.println("现在是:"+cal.get(Calendar.HOUR_OF_DAY)+"点");
- // 分钟数
- System.out.println("现在是:"+cal.get(Calendar.MINUTE)+"分");
- // 秒数
- System.out.println("现在是:"+cal.get(Calendar.SECOND)+"秒");
- // 毫秒
- System.out.println("现在是:"+cal.get(Calendar.MILLISECOND)+"毫秒");
-
-
- // 自定义时间获取
- SimpleDateFormat dc = new SimpleDateFormat();
- dc.applyPattern("yyyy-MM-dd");
- Date d = dc.parse("2021-11-13");
- cal.setTime(d);
-
- System.out.println("--------------------2021-11-13信息-----------------------");
-
- // 获得年份
- System.out.println("现在是:" + cal.get(Calendar.YEAR) + "年");
-
- // 获得月份
- System.out.println("现在是:" + (cal.get(Calendar.MONTH)+1) + "月");
-
- //获得日期
- System.out.println("现在是:" + cal.get(Calendar.DATE) + "号");
- System.out.println("现在是:" + cal.get(Calendar.DAY_OF_MONTH) + "号");
-
- // 获得这是今年的第几天
- System.out.println("现在是今年第" + cal.get(Calendar.DAY_OF_YEAR) + "天");
-
- // 获得今天周几
- System.out.println("现在是星期:" + (cal.get(Calendar.DAY_OF_WEEK)-1) );
-
- // 获得今天是这个月的第几周
- System.out.println("现在是第:" + cal.get(Calendar.DAY_OF_WEEK_IN_MONTH) + "周" );
-
-
-
-
- }
运行结果如下:
- cal.getTime():Sat Nov 13 14:26:38 CST 2021
- 现在是:2021年
- 现在是:11月
- 现在是:13号
- 现在是:13号
- 现在是第几:317天
- 现在是周:6
- 现在是这个月第2周
- 现在是:2点
- 现在是:14点
- 现在是:26分
- 现在是:38秒
- 现在是:366毫秒
- --------------------2021-11-13信息-----------------------
- 现在是:2021年
- 现在是:11月
- 现在是:13号
- 现在是:13号
- 现在是今年第317天
- 现在是星期:6
- 现在是第:2周
原文链接:https://blog.csdn.net/m0_57556230/article/details/121303957
标签:java,get,日历,System,cal,println,Calendar,out
From: https://www.cnblogs.com/sunny3158/p/17813578.html