首页 > 编程 > Java > 正文

Java关于时间日期的Date类和Calendar类概述

2019-11-11 05:52:18
字体:
来源:转载
供稿:网友

1.      System.currentTimeMillis()方法

可以获取当前时间距离1970年01月01日00时00分00秒的秒数,如果程序运行在北京时区,则获取的数据是当前时间距离1970年01月01日08时00分00秒的秒数.

例如

System.out.PRintln(System.currentTimeMillis());

 

2.      Date类

利用Date类获取当前日期时间的方法如下

		//打印当前时间		//方法一		System.out.println(new Date());		//方法二		System.out.println(new Date(System.currentTimeMillis()));

可以利用字符串的split()方法将上述结果分割,获得其中某个项的信息

		Date date = new Date();		String []Word = date.toString().split(" ");//转成字符串并且分割		for(String w:word)			System.out.println(w);

3.      Calendar类

①获取Calendar对象

利用Calendar的静态方法getInstance()方法获取Calendar对象.

②set方法

setTime(Date date)将日历翻到date所在的时间.

 

set(int year,int month,int day)将日历翻到yearmonth day对应的年月日.

 

③get方法

get(常量)根据常量为YEAR,MONTH_OF_YEAR等值获取当前Calendar对象对应的年或月等单个信息.

 

例如

import java.util.Calendar;import java.util.Date;import static java.util.Calendar.*;public class AsMain {	public static void main(String args[]){				Calendar calendar = Calendar.getInstance();//获取Calendar对象				//1.获取单个信息并分别打印		calendar.setTime(new Date(1000000000));//设置为当前日期		int year = calendar.get(YEAR);//获取[年]		int month = calendar.get(MONTH)+1;//注意:月份对应的数字比实际月份少 1		int day = calendar.get(DAY_OF_MONTH);		int weekday = calendar.get(DAY_OF_WEEK);		int hour = calendar.get(HOUR_OF_DAY);		int minute = calendar.get(MINUTE);		int second = calendar.get(SECOND);//获取[秒0]		System.out.println(year+"年"+month+"月"+day+"日"+		Weekday(weekday)+hour+"时"+minute+"分"+second+"秒");				//2.计算日期1和日期2的间隔天数		year = 1987;		month = 6;		day = 5;		calendar.set(year,month,day);//设定日期1		long totalsecond_1 = calendar.getTimeInMillis();//获取日期1距离元年的秒数		System.out.print(year+"年"+month+"月"+"日与");		year = 1987;		month = 7;		day = 9;		calendar.set(year,month,day);//设置日期2		long totalsecond_2 = calendar.getTimeInMillis();//获取日期2距离元年的秒数		long days = (totalsecond_2 - totalsecond_1) / (24*3600*1000);//计算秒数之差,并换算成天数		System.out.println(year+"年"+month+"月"+"日相隔"+days+"天");	}		public static String Weekday(int weekday){		switch(weekday){		case 1:return "星期日";		case 2:return "星期一";		case 3:return "星期二";		case 4:return "星期三";		case 5:return "星期四";		case 6:return "星期五";		case 7:return "星期六";		default:return "";		}	}}

运行结果如下

1970年1月12日星期一21时46分40秒1987年6月日与1987年7月日相隔35天


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表