Java高级-Date、DimpleDateFormat和Calendar

Date

1.概念  

       java.util.Date类用于封装日期及时间信息。Date类的大多数用于进行时间分量计算的方法都已经被标明为过时,都已经被Calendar取代,因此Date仅用于表示时间。                                                     

2.API

  • long getTime()

        返回从1970.1.1 00:00:00到现在所经历的毫秒事件数

  • void setTime()

        设置给的毫秒时间的日期。

SimpleDateFormat

1.概念

      使用SimpleDateFormat将Date转换为给定格式的字符串。该类位于:java.text包中

2.API

  • String format(Date date)

            将Date转换为给定格式的日期字符串。

Date date = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println(sdf.format(date));
结果:
2019-7-22 15:38:02
  • Date parse(String source)

            将给定格式的日期字符串转换为Date。注意:若日期字符串与指定的日期格式不匹配,将发生ParseException异常

String dateStr = "2019-07-22";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
try{
    Date date = sdf.parse(dateStr);
}catch(ParseException e){
    e.printstack();
}

3.常用格式字符串

y

代表年

例如:yyyy->2019; yy->19

M

代表月

例如:MM->07;M->7

d

代表天

例如:dd->22;d->22

H

代表小时(24小时制)

例如:HH->15:00:00

h

代表小时(12小时制)

例如:ahh->下午13:00:00

m 代表分钟
s 代表秒
SS

代表毫秒

例如:SS->029

E

代表星期

例如:E->星期一

a 代表上午或者下午

Calendar

1.概念

     Calendar类是一个抽象类,位于 java.util包中,用于封装日历信息,其主要作用在于可以对时间分量进行运算

      其使用频繁的子类为:GregorianCalendar

2.使用

         获取Calendar对象两种方式如下所示:

方式一:使用new获取Calendar对象
Calendar cal = new GregorianCalendar();
方式二:通常使用Calendar的静态方法获取Calendar对象
//getInstance()方法会根据系统处于的地域信息返回对应地域的Calendar类的实现
Calendar cal = Calendar.getInstance();

3.API

  • 设置时间信息
void java.util.Calendar.set(int field, int value)

设置时间

filed为常量值,比如:Calendar.YEAR,Calendar.MONTH等

value为对应的值,注意月份从下标0开始

void java.util.Calendar.setTime(Date date) 设置时间
  • 获取时间信息
Date java.util.Calendar.getTime() 返回Date日期对象
  • 获取实际天数
1.int java.util.Calendar.getActualMaximum(int field) 如:calendar.getActualMaximum(Calendar.DAY_OF_MONTH)

日期字符串、毫秒、日期、日历之间可以互相转换。

发布了131 篇原创文章 · 获赞 39 · 访问量 4万+

猜你喜欢

转载自blog.csdn.net/qq_35507234/article/details/96858132