您的位置:首页 > 编程语言 > Java开发

Java日期时间相关的类

2017-10-11 23:12 302 查看
Date类

(1)基本概念

java.util.Date类用于描述特定的瞬间,可以精确到毫秒,通常描述年月日时分秒信息。

(2)常用的方法

Date() - 无参方式构造对象,默认使用当前系统时间来初始化该对象。

Date(long date) - 根据参数指定的毫秒数来构造对象。

- 参数为距离1970年1月1日0时0分0秒的毫秒数,1秒=1000毫秒 1毫秒=1000微秒

- 该方法与File类中的方法搭配使用很方便。

long getTime() - 用于获取调用对象距离1970年1月1日0时0分0秒的毫秒数。

void setTime(long time) - 根据参数指定的毫秒数来调整调用对象描述的时间。

import java.util.Date;
public class TestDate {
public static void main(String[] args) {
//1.使用无参的方式构造对象
Date dl = new Date();
System.out.println("dl = " + dl); //自动调用toString()系统时间

//2.使用有参的方式构造对象
Date d2 = new Date(1000);
System.out.println("d2 = " + d2); //1970年1月1日 08:00:01

System.out.println("-------------------------");
//3.使用有参的过时构造方法,来传入年月日时分秒
//Date d3 = new Date(2008-1900,8-1,8,20,8,8);
//System.out.println("d3 = " + d3);

System.out.println("-------------------------");
//使用getTime()方法和setTime()方法
long msec = dl.getTime();
System.out.println("当前系统时间距离1970年1月1日0时0分0秒的毫秒数:"+msec);

Date d4 = new Date(msec);
System.out.println("d4 = " + d4);

d2.setTime(2000);
System.out.println("d2 = " + d2);
}
}


SimpleDateFormat类

(1)基本概念

java.text.SimpleDateFormat类用于实现Date类型和String类型之间的转换,调整日期格式

(2)常用的方法

SimpleDateFormat(String pattern) - 根据参数指定的格式来构造对象。

- 参数字符串中格式有:y-年 M-月 d-日 H-时 m-分 s-秒

String format(Date date) - 用于将Date类型转换为String类型并返回。

Date parse(String source) - 用于将String类型转换为Date类型并返回

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class TestSimpleDateFomat {

public static void main(String[] args) throws ParseException  {

//1.按照默认方式打印日期
Date dl = new Date();
System.out.println("dl = " + dl); //打印默认日期格式

//2.按照指定的格式来打印日期
//SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒");

//实现将dl的数值按照sdf中的格式来转换为String类型
String str = sdf.format(dl);
System.out.println(str);

//实现将str的数值按照sdf的格式转换为Date类型
Date d2 = sdf.parse(str);
System.out.println("d2 = " + d2);
}

}


Calendar类

(1)基本概念

java.util.Calendar类用于取代Date类中某些方法来描述年月日时分秒等信息。

(2)常用的方法

static Calendar getInstance() - 用于返回Calendar类型的对象。

void set(int year, int month, int date, int hourOfDay, int minute, int second)

- 将当前调用对象中的日期信息设置为参数指定的内容。

- 传入的月份要减1.

Date getTime() - 用于将Calendar类型转换为Date类型。

import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

public class TestCalendar {

public static void main(String[] args) {

//1.使用过时的构造方法可以传入年月日时分秒信息
Date dl = new Date(2008-1990, 8-1,8,20,8,8);
System.out.println("dl = " + dl);

System.out.println("---------------------");
//2.使用现在的方式传入年月日时分秒信息
//2.1 获取Calendar类型的对象
Calendar cl = Calendar.getInstance();
//2.2 设置年月日时分秒信息
cl.set(2008, 8-1,8,20,8,8);
//2.3 转换为Date类型的对象
Date d2 = cl.getTime();
System.out.println("d2 = " + d2);

System.out.println("----------------------");

//3.按照中国人的习惯打印日期信息
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String str = sdf.format(d2);
System.out.println(str);

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: