时间类型:Date类、DateFormate类、Calendar类

一、Date类:

package 常用的时间类;

import java.util.Date;

public class DateTest {
	//类Date表示特定的瞬间,精确到毫秒
	/*
	 * Date类常用的方法:
	 * 构造方法:
	 * public Date():返回当前时间
	 * public Date(long date):返回指定毫秒值的日期对象
	 * 普通方法:
	 * public long getTime():获取当前时间对象的毫秒值
	 * public void setTime(long time):设置时间毫秒值
	 * 
	 */
	
	public static void main(String[] args){
		
		//获取当前时间
		Date date = new Date();
		System.out.println(date);
		
		//获取当前时间的毫秒值
		long time = date.getTime();
		System.out.println(time);
		
		//设置date的毫秒值为0
		date.setTime(0);
		System.out.println(date);
		
	}
}

运行结果:


二、DateFormat类

DateFormat是用于日期格式化的类,将一个Date对象转换为指定格式的字符串,也可以将一个符合指定格式的字符串转换为Date对象。需要说明的是DateFormat是一个抽象类,我们需要使用的是他的子类:SimpleDateFormat,其允许用户选择任何自定义的时间类型格式。

package 常用的时间类;

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

public class DateFormatTest {

	public static void main(String[] args) throws ParseException {
		
		//创建当前日期对象
		Date date = new Date();
		//创建日期格式化SimpleDateFormat对象
		//使用默认的时间格式
		SimpleDateFormat sdf = new SimpleDateFormat();
		//使用自定义的时间格式
		SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
		SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy年MM月dd日  HH:mm:ss");
		
		//调用format方法将日期转换为字符串
		String sd1 = sdf1.format(date);
		String sd2 = sdf2.format(date);
		
		System.out.println(sd1);  //2018-07-06 22:57:19
		System.out.println(sd2);  //2018年07月06日  22:57:19
		
		//求给定字符串的日期的毫秒值
		String birth = "1995-01-06";
		//创建日期格式化对象
		SimpleDateFormat sdf3 = new SimpleDateFormat("yyyy-MM-dd");
		Date d1 = sdf3.parse(birth);
		//调用Date类的getTime()方法获取指定时间的毫秒值
		System.out.println(d1.getTime());  //789321600000
	}
}

三、Calendar类

package 常用的时间类;

import java.util.Calendar;

public class CalendarTest {

	public static void main(String[] args) {
		/*
		 * Calendar:日历类,也表示一个瞬间
		 * public static Calendar getInstance(); //获取日期对象
		 * Calendar rightNow = Calendar.getInstance(); //返回当前时间
		 * public int get(int field); //获取时间段的值
		 * public void add(int field, int amount); //指定字段增加值
		 * public final void set(int year, int month, int date); //设置年月日值
		 * public final Date getTime(); //获取该日历对象转成日期对象
		 * 
		 */
		
		//获取日期对象
		Calendar rightNow = Calendar.getInstance();
		System.out.println(rightNow);
		
		//获取指定时间字段值
		System.out.println(rightNow.get(Calendar.YEAR));
		System.out.println(rightNow.get(Calendar.MONTH));
		System.out.println(rightNow.get(Calendar.DATE));
		System.out.println(rightNow.get(Calendar.DAY_OF_MONTH));
		
		//Calendar对象获取毫秒值
		long time = rightNow.getTime().getTime();
		long timeInMillis = rightNow.getTimeInMillis();
		System.out.println(time);
		System.out.println(timeInMillis);

	}
}

猜你喜欢

转载自blog.csdn.net/pcwl1206/article/details/80946998
今日推荐