黑马程序员-Date和Calendar

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

Date

处理日期,时间;

大部分的方法已过时,不推荐使用,但是你使用过时的方法也不会报错。

Date() 分配 Date 对象并初始化此对象,以表示分配它的时间(精确到毫秒)。

Date(long date)  分配 Date 对象并初始化此对象,以表示自从标准基准时间(称为“历元(epoch)”,即 1970 年 1 月 1 日 00:00:00 GMT)以来的指定毫秒数。

 

SimpleDateFormat

 

java.text.SimpleDateFormat

SimpleDateFormat 是一个与语言环境有关的方式来格式化和解析日期的具体类。它允许进行格式化(日期 -> 文本)、解析(文本 -> 日期)和规范化。

SimpleDateFormat(String pattern)  用给定的模式和默认语言环境的日期格式符号构造 SimpleDateFormat。

public final String format(Date date)将一个 Date 格式化为日期/时间字符串。

 public Date parse(String source) throwsParseException:把字符串source表示的时间按source的格式转成Date对象。

 

练习:StringDate的相互转化

 

按某种时间格式来输出指定的String类型时间

date2String

format


把某种时间格式的String时间转成Date类型时间

string2Date

parse

package com.heima;
 
import java.text.SimpleDateFormat;
import java.util.Date;
 
public class Demo{
    public static void main(String[] args) throws Exception {
      
       Date d = new Date();
       System.out.println(d);//获取当前时间
      
       //格式化
       SimpleDateFormat  sd = new SimpleDateFormat("yyyy-M-d HH:mm:ss E");
      
       String s = sd.format(d);//这个方法继承于SimpleDateFormat的父类DateFormat类!
       System.out.println(s);
      
       //反格式化
       d = sd.parse(s);
       System.out.println(d);
    }
}

 

Calendar

 

推荐使用处理日期和时间的类Calendar;

是抽象类,不能实例化,通过

static Calendar getInstance() 获得一个Calendar对象。

int get(int field):返回指定日历字段值

静态常量:

YEAR 表示年的字段数字。

MONTH 表示月份字段数字,月份范围是[0,11]。

DATE 表示一个月中的某天。

DAY_OF_MONTH 表示一个月中的某天。

DAY_OF_WEEK 表示一个星期中的某天。

HOUR_OF_DAY / HOUR 表示第几小时

MINUTE  表示第几分钟

SECOND       表示第几秒

 

Date getTime() 返回一个表示此 Calendar 时间值的 Date 对象。

void set(int year, int month, int date, inthour, int minute, int second)   设置字段 YEAR、MONTH、DAY_OF_MONTH、HOUR、MINUTE 和 SECOND 的值。

abstract void add(int field, int amount) 根据日历的规则,为给定的日历字段添加或减去指定的时间量。

若 amount为负数,则减去一天,

若 amount为正数 ,则加上一天

 

例子

package com.heima;
 
import java.util.Calendar;
import java.util.Date;
 
public class Demo {
    public static void main(String[] args) {
       Calendar c = Calendar.getInstance();
       System.out.println(c);
      
       Date d = c.getTime();
       System.out.println(d);
      
       /**
        * void set(intyear, int month, int date, int hour, int minute, intsecond)  
        * 设置字段YEAR、MONTH、DAY_OF_MONTH、HOUR、MINUTE 和 SECOND的值。
        */
      
       c.set(2015, 07, 15, 12, 24, 55);
       d = c.getTime();
       System.out.println(d);
      
       c.add(Calendar.DAY_OF_MONTH, 3);
       d = c.getTime();
       System.out.println(d);
    }
}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值