Date、SimpleDateFormat、calendar使用

Date日期类

说明

//日期在开发中常用于:时间生日,下单时间,付款时间
//类Date 表示特定的瞬间,精确到毫秒

Date对象,是操作日期和时间的对象。Date对象对日期和时间的操作只能通过方法。

构造函数

 new Date() :返回当前的本地日期和时间

返回值:{Date} 返回一个表示本地日期和时间的Date对象。 

var dt = new Date();
console.log(dt); // => 返回一个表示本地日期和时间的Date对象

getTime() :返回Date对象与'1970/01/01 00:00:00'之间的毫秒值(北京时间的时区为东8区,起点时间实际为:'1970/01/01 08:00:00') 。 

        long time=date1.getTime();
        System.out.println(time+"毫秒");

毫秒数;表示从'1970/01/01 00:00:00'(东八区)为起点,开始计算经过了多少毫秒

注意:起点的时分秒还要加上当前所在的时区,北京时间的时区为东8区,起点时间实际为:'1970/01/01 08:00:00'

         Date date2=new Date(1000);
        System.out.println(date2);

这种方法还有好多不多展示

dt.getFullYear(); // => 2014:年
dt.getMonth(); // => 11:月;实际为12月份(月份从0开始计算)
dt.getDate(); // => 25:日
dt.getHours(); // => 15:时
dt.getMinutes(); // => 30:分
dt.getSeconds(); // => 40:秒
dt.getMilliseconds(); // => 333:毫秒
dt.getDay(); // => 4:星期几的值
dt.getTime(); // => 1419492640333 :返回Date对象与'1970/01/01 00:00:00'之间的毫秒值(北京时间的时区为东8区,起点时间实际为:'1970/01/01 08:00:00')

SimpleDateFormat

说明

SimpleDateFormat类是DateFormat类的子类,我们一般使用它。
SimpleDateFormat sdf = new SimpleDateFormat(“yyyy年MM月dd日 HH:mm:ss”);
我们一般使用这个构造方法来实例化SimpleDateFormat对象。
括号里面的yyyy年MM月dd日 HH:mm:ss;代表我们传入的Date对象转变为字符串时的格式。

DateFormate的format()方法来格式化时间,返回值类型为:String

使用parse()方法解析字符串并返回一个Date对象。

 //SimpleDateFormat用来实现日期和字符串之间的相互转化
        SimpleDateFormat sdf=new SimpleDateFormat("YYY/MM/dd  HH:mm:ss");//创建日期格式化类的对象,指定格式符号
        Date date1=new Date();//获取当前时间

        //把日期转换成指定格式的字符串
        String format= sdf.format(date1);
        System.out.println(format);

        //把指定格式的字符串 转换成日期
        String time="2000/10/20 8:20:38";
        Date date2=sdf.parse(time);
        System.out.println(date2);

总结:

  • 1.先使用Date date = new Date(); //创建一个现在的时间对象。
  • 2.使用SimpleDateFormate sdf = new SimpleDateFormate(“你想要的需要的格式”);

 calendar

说明 

在实际项目当中,我们经常会涉及到对时间的处理,例如登陆网站,我们会看到网站首页显示XXX,欢迎您!今天是XXXX年。。。。某些网站会记录下用户登陆的时间,比如银行的一些网站,对于这些经常需要处理的问题 

Calendar类是一个抽象类,可以通过Calendar的getInstance方法返回一个calendar对象
Calendar rightNow = Calendar.getInstance();

成员方法

  • public static Calendar getInstance()
  • public int get(int field)
  • public void add(int field, int amount)
  • public final void set(int year, int month, int date)

 

 Calendar calendar=Calendar.getInstance();
        Date date2=calendar.getTime();//获取当前时间
        System.out.println(date2);

        long timeInMillis=calendar.getTimeInMillis();
        System.out.println("当前时间的毫秒值:"+timeInMillis);

        TimeZone timeZone=calendar.getTimeZone();
        System.out.println("时区:"+timeZone);

        //get方法可以根据指定的日历字段  获取时间对应的值
        int year=calendar.get(Calendar.YEAR);
        System.out.println("年份"+year);
        int month=calendar.get(Calendar.MONTH);
        System.out.println("月份:"+(month+1));//0——11月 表示1——12月
        int date=calendar.get(Calendar.DAY_OF_MONTH);
        System.out.println("日期"+date);

        System.out.println("-----------------------------------");
        //获取  指定日期  月份0-11 表示1-12月
        calendar.set(2000,9,28,15,32,29);
        Date date3=calendar.getTime();
        System.out.println(date3);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值