java关于时间预定义类的学习研究

/*
java关于时间预定义类的学习研究
1.Date类
2.GregorianCalendar类
*/
import java.util.*;//要想使用Date类,就必须要有此句
public class AboutTime
{
public static void main(String[] args)
{
//使用Date();Date是类,那么Date()便是一个新对象
Date birthday=new Date();
System.out.println(birthday);

    //使用toString方法,该方法是Date类中的,作用是把时间变为字符串形式
    String s= new Date().toString();
    System.out.println(s);

    //deadline是对象变量,并不是对象,因为date类的对象可以有很多,因此要用new初始化才能变成对象。
    Date deadline=birthday;
    System.out.println(deadline);
    /*
    以上三个输出结果是一样的;
    deadline其实相当于一个指针,因此可以=null;

    下面是GregorianCalendar类的使用,用于表示对象构造时的日期和时间
    */

    GregorianCalendar Atime=new GregorianCalendar();
    System.out.println(Atime);

    /*
    输出了一下结果,把所有的信息输出了,但我们平时不需要所有的时间信息
    java.util.GregorianCalendar[time=1476179189984,areFieldsSet=true,
    areAllFieldsSet=true,lenient=true,
    zone=sun.util.calendar.ZoneInfo[id="Asia/Shanghai",offset=28800000,dstSavings=0,useDaylight=false,transitions=19,lastRule=null],
    firstDayOfWeek=1,minimalDaysInFirstWeek=1,ERA=1,YEAR=2016,MONTH=9,WEEK_OF_YEAR=42,
    WEEK_OF_MONTH=3,DAY_OF_MONTH=11,DAY_OF_YEAR=285,DAY_OF_WEEK=3,DAY_OF_WEEK_IN_MONTH=2,
    AM_PM=1,HOUR=5,HOUR_OF_DAY=17,MINUTE=46,SECOND=29,MILLISECOND=984,ZONE_OFFSET=28800000,DST_OFFSET=0]
    因此若想修改,就得使用更改器方法和访问器方法
    */

    GregorianCalendar now=new GregorianCalendar();
    int month=now.get(Calendar.MONTH);//Calendar类是GregorianCalendar的子类,MONTH是一个常量,把当前的月份输出
    int weekday=now.get(Calendar.DAY_OF_MONTH);
    System.out.println("month="+month+";"+"weekday="+weekday);

    //以上是get方法,下面是set方法,即更改器方法
    Atime.set(Calendar.YEAR,2001);
    Atime.set(Calendar.MONTH,Calendar.APRIL);
    Atime.set(Calendar.DAY_OF_MONTH,15);


    //可以提供年月日构造一个表示特定日期午夜的日历对象
    GregorianCalendar Btime=new GregorianCalendar(1995,11,3);//注意,月份是从0开始的
    System.out.println(Btime);

    //使用getTime和setTime方法进行GregorianCalendar和Date类的转换
    GregorianCalendar cldar=new GregorianCalendar(1884,1,23);//括号里填上想写的日期
    Date hireday=cldar.getTime();//getTime()是一个方法,是调用cldar对象已储存的日期,返回的是Date类型
    System.out.println(hireday);//结果是Sat Feb 23 00:00:00 CST 1884

    //反之
    GregorianCalendar cldar2=new GregorianCalendar();
    cldar2.setTime(hireday);
    int year=cldar2.get(Calendar.YEAR);

}

}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值