黑马程序员_73_Calendar类

 ——- android培训java培训、期待与您交流! ———-

Calendar类

我的印象

这是一个日期类,如果要操作日期,就查阅这个类的API

API

这是一个抽象类,不能直接被实例化
通过下面的方法获取一个实例
static Calendar getInstance()
使用默认时区和语言环境获得一个日历。
有两个构造函数
protected Calendar()
构造一个带有默认时区和语言环境的 Calendar。
protected Calendar(TimeZone zone, Locale aLocale)
构造一个带有指定时区和语言环境的 Calendar。
有很多字段
有一个直接子类
GregorianCalendar

import java.util.*;
import java.text.*;
class CalendarDemo 
{
    public static void main(String[] args) 
    {
        //获取Calendar对象
        //Calendar c = Calendar.getInstance();
        //System.out.println(c);

        //常用字段
        //System.out.println(c.get(Calendar.DAY_OF_WEEK)+getWeek(c.get(Calendar.DAY_OF_WEEK)));//2 星期一
        //System.out.println(c.get(Calendar.DAY_OF_MONTH));//11 日
        //System.out.println(c.get(Calendar.YEAR));//2015 年
        //System.out.println(c.get(Calendar.MONTH)+"对应中文月份:"+getMonth(c.get(Calendar.MONTH)));
                                                    //4 从0看开始计数,所以4对应于5月

        //获取当前时间
        //Date d = c.getTime();
        //System.out.println(d);//Mon May 11 16:45:47 CST 2015  

        //设置日历字段的值
        //c.set(2014,4,11,18,20,20);

        ////年份/月份/日期/增加或减少方法演示
        //c.add(Calendar.YEAR,1);
        //c.add(Calendar.MONTH,1);
        //c.add(Calendar.DAY_OF_MONTH,1);   
        ////打印结果2015/06/12 18:20:20 星期五

        ////年份/月份/日期/增加或减少方法演示
        //c.add(Calendar.YEAR,-1);
        //c.add(Calendar.MONTH,-1);
        //c.add(Calendar.DAY_OF_MONTH,-1);  
        ////打印结果2013/04/10 18:20:20 星期三

        //获取修改后的时间
        //Date d = c.getTime();

        ////将指定模式传给SimpleDateFormat对象
        //SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss E");

        ////将时间格式化
        //String time = sdf.format(d);
        //System.out.println(time);//2014/05/11 18:20:20 星期日

        //练习一演示
        //int year = 2000;
        //int days = febDays(year);
        //System.out.println(year+"年二月有"+days+"天");
    }

    //查表法显示中文月份
    public static String getMonth(int month)
    {

        String[] months = {"一月","二月","三月","四月"
                            ,"五月","六月","七月","八月"
                            ,"九月","十月","十一月","十二月"};
        int index = month;
        return months[index];       
    }

    //查表法显示中文星期
    public static String getWeek(int DAY_OF_WEEK)
    {

        String[] weeks = {
                            "","星期日","星期一","星期二","星期三","星期四","星期五","星期六"};
        int index = DAY_OF_WEEK;
        return weeks[index];        
    }

    //练习一:任意年的二月有多少天
    public static int febDays(int year)
    {
        //获取日历对象
        Calendar c = Calendar.getInstance();

        //设置为某年的3月1日
        c.set(year,2,1);

        ////设置日历年份
        //c.set(Calendar.YEAR,year);
        ////设置月份为三月
        //c.set(Calendar.MONTH,2);
        ////设置天数为1
        //c.set(Calendar.DAY_OF_MONTH,1);

        //日历减少一天
        c.add(Calendar.DAY_OF_MONTH,-1);
        //返回二月的最后一天
        return c.get(Calendar.DAY_OF_MONTH);
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值