package com.uncle.myutil;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.TimeZone;
/**
* 日期相关
* Date类
* 1.通常使用的是java.util包
* 2.导包 拿来使用 构建对象
* 3.通常使用无参数的构造方法 或者带long构造方法
* 4.Date类中常用的方法
* before(); after();
* setTime() getTime();----->long
* compareTo(); -1 1 0
* 5.可以处理一个Date日期的格式
*
* DateFormat类
* 1.包java.text 需要导包使用
* 2.此类是一个抽象类 不能创建对象 子类来使用
* 3.SimpleDateFormat类 是DateFormat的子类
* 4.调用带String参数的构造方法创建format对象
* SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
* String v = sdf.format(date1);//通过sdf对象将date1格式化成你描述的样子
*
* Calendar类 1.1版本
* 1.所属的包java.util 需要导包
* 2.有构造方法 用protected修饰的 通常访问不到 通常会调用默认的getInstance();
* 3.常用方法
* after() before()
* setTime() getTime()---->Date
* getTimeInMillis()----time
* getTimeZone()---TimeZone
* Calendar里面包含一个date属性 可以操作date的某一个局部信息
* set get
* calendar.set(Calendar.YEAR,2015);
* int year = calendar.get(Calendar.YEAR);
*
* TimeZone
* 1.java.util包
* 2.可以通过calendar对象.getTimeZone()获取 或 TimeZone.getDefault();
* 3.常用方法
* tz.getID() ----> Asia/Shanghai
* tz.getDisplayName() 中国标准时间
*/
public class TestDate {
public static void main(String[] args){
//返回当前系统时间与计算机元年之间的毫秒差
//1970-1-1 00:80:00
long time = System.currentTimeMillis();
System.out.println(time);
//1545364985172
//1545365000042
//1545365012877
Date date1 = new Date(1545364985172L);//15分钟之前的时间
Date date2 = new Date();//默认就是用当前的系统时间构建的date对象
System.out.println(date2);//重写了toString 格林威治格式Fri Dec 21 12:12:12 CST 2018
boolean x = date1.before(date2);//date1是否在date2之前
boolean y = date1.after(date2);//date1是否在date2之后
//date对象中应该有一个long的属性 time
date1.setTime(1545365012877L);//设置date1的时间 毫秒值
long reTime= date1.getTime();//获取date1的时间 毫秒值
System.out.println(x+"--"+y);
System.out.println(date2.compareTo(date1));//按照顺序比较 -1调用在前参数在后 1刚好相反
//2018-12-21 12:19:16
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String v = sdf.format(date1);//通过sdf对象将date1格式化成你描述的样子
System.out.println(v);
Calendar calendar = Calendar.getInstance();//系统当前时间的calendar对象
//java.util.GregorianCalendar[name=value,name=value]
System.out.println(calendar);
calendar.set(Calendar.YEAR,2015);
int year = calendar.get(Calendar.YEAR);
int month = calendar.get(Calendar.MONTH);//从0开始数
int day = calendar.get(Calendar.DAY_OF_MONTH);
System.out.println(year+"--"+month+"--"+day);
TimeZone tz = calendar.getTimeZone();
//TimeZone tz = TimeZone.getDefault();
System.out.println(tz);
System.out.println(tz.getID());
System.out.println(tz.getDisplayName());
}
}
日付関連のクラス/日付/カレンダー/タイムゾーン
おすすめ
転載: blog.csdn.net/m0_51945027/article/details/112828682
ランキング