跳转至

Calendar

1. 常用属性

属性 作用
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 毫秒

2. 常用方法

属性 作用
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,得到这个月可能有多少天
code
package annotation;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

/**
 * @author summer
 * @create 2020-02-13 22:04
 */
public class test {
    public static void main(String[] args) throws ParseException {
        Calendar c = Calendar.getInstance();
        System.out.println(c.getTime());

        // 获得年份
        System.out.println("现在是:" + c.get(Calendar.YEAR) + "年");

        // 获得月份
        System.out.println("现在是:" + (c.get(Calendar.MONTH) + 1) + "月");

        //获得日期
        System.out.println("现在是:" + c.get(Calendar.DATE) + "号");
        System.out.println("现在是:" + c.get(Calendar.DAY_OF_MONTH) + "号");

        // 获得这是今年的第几天
        System.out.println("现在是今年第" + c.get(Calendar.DAY_OF_YEAR) + "天");

        // 获得今天周几
        System.out.println("现在是星期:" + (c.get(Calendar.DAY_OF_WEEK) - 1));

        // 获得今天是这个月的第几周
        System.out.println("现在是第:" + c.get(Calendar.DAY_OF_WEEK_IN_MONTH) + "周");

        // 12小时制的时间
        System.out.println("现在是:" + c.get(Calendar.HOUR) + "点");

        // 24小时制的时间
        System.out.println("现在是:" + c.get(Calendar.HOUR_OF_DAY) + "点");

        // 分钟数
        System.out.println("现在是:" + c.get(Calendar.MINUTE) + "分");

        // 秒数
        System.out.println("现在是:" + c.get(Calendar.SECOND) + "秒");

        // 毫秒
        System.out.println("现在是:" + c.get(Calendar.MILLISECOND) + "毫秒");


        SimpleDateFormat dc = new SimpleDateFormat();
        dc.applyPattern("yyyy-MM-dd");
        Date d = dc.parse("2017-5-13");
        c.setTime(d);

        System.out.println("--------------------2017-5-13信息-----------------------");

        // 获得年份
        System.out.println("现在是:" + c.get(Calendar.YEAR) + "年");

        // 获得月份
        System.out.println("现在是:" + (c.get(Calendar.MONTH) + 1) + "月");

        //获得日期
        System.out.println("现在是:" + c.get(Calendar.DATE) + "号");
        System.out.println("现在是:" + c.get(Calendar.DAY_OF_MONTH) + "号");

        // 获得这是今年的第几天
        System.out.println("现在是今年第" + c.get(Calendar.DAY_OF_YEAR) + "天");

        // 获得今天周几
        System.out.println("现在是星期:" + (c.get(Calendar.DAY_OF_WEEK) - 1));

        // 获得今天是这个月的第几周
        System.out.println("现在是第:" + c.get(Calendar.DAY_OF_WEEK_IN_MONTH) + "周");
    }
}
运行结果
现在是:2020年
现在是:2月
现在是:13号
现在是:13号
现在是今年第44天
现在是星期:4
现在是第:2周
现在是:10点
现在是:22点
现在是:6分
现在是:12秒
现在是:576毫秒
--------------------2017-5-13信息-----------------------
现在是:2017年
现在是:5月
现在是:13号
现在是:13号
现在是今年第133天
现在是星期:6
现在是第:2周