java把日期和时间_Java中日期和时间的相关问题
1.java.lang.System类
System类提供的public static long currentTimeMillis()用来返回当前时间与1970年1月1日0时0分0秒之间以毫秒为单位的时间差。
System.currentTimeMillis();
- java.util.Date类
表示特定的瞬间,精确到毫秒
构造方法:
Date( ) 使用Date类的无参数构造方法创建的对象可以获取本地当前时间。
Date(long date) 指定时间的date对象
常用方法
getTime():返回自 1970 年 1 月 1 日 00:00:00 GMT 以来此 Date 对象表示的毫秒数。
toString():把此 Date 对象转换为以下形式的 String: dow mon dd hhss zzz yyyy 其中: dow 是一周中的某一天 (Sun, Mon, Tue, Wed, Thu, Fri, Sat),zzz是时间标准
Date d1 = newDate();
System.out.println(d1.getTime());
System.out.println(d1);
1522287472200Thu Mar 29 09:37:52 CST 2018
3.SimpleDateFormat
Date类的API不易于国际化,大部分被废弃了,java.text.SimpleDateFormat类是一个用来格式化和解析日期的具体类
格式化:
SimpleDateFormat() :默认的模式和语言环境创建对象
public SimpleDateFormat(String pattern):该构造方法可以用参数pattern指定的格式创建一个对象,该对象调用:
public String format(Date date):方法格式化时间对象date
解析:
public Date parse(String source):从给定字符串的开始解析文本,以生成一个日期
SimpleDateFormat df = newSimpleDateFormat();
System.out.println(df.format(d1));
SimpleDateFormat df1 = new SimpleDateFormat(“EEE, d MMM yyyy HHss aaa”);
System.out.println(df1.format(d1));
System.out.println(df1.parse(“星期四, 29 三月 2018 09:37:52 上午”));
18-3-29 上午9:37星期四, 29 三月 2018 09:37:52 上午
Thu Mar 29 09:37:52 CST 2018
Date and Time PatternResult
“yyyy.MM.dd G ‘at’ HHss z”
2001.07.04 AD at 12:08:56 PDT
“EEE, MMM d, ‘’yy”
Wed, Jul 4, ‘01
“h:mm a”
12:08 PM
“hh ‘o’’clock’ a, zzzz”
12 o’clock PM, Pacific Daylight Time
“K:mm a, z”
0:08 PM, PDT
“yyyyy.MMMMM.dd GGG hh:mm aaa”
02001.July.04 AD 12:08 PM
“EEE, d MMM yyyy HHss Z”
Wed, 4 Jul 2001 12:08:56 -0700
“yyMMddHHmmssZ”
010704120856-0700
“yyyy-MM-dd’T’HHss.SSSZ”
2001-07-04T12:08:56.235-0700
“yyyy-MM-dd’T’HHss.SSSXXX”
2001-07-04T12:08:56.235-07:00
“YYYY-‘W’ww-u”
2001-W27-3
- java.util.Calendar(日历)类
Calendar是一个抽象基类,主用用于完成日期字段之间相互操作的功能
获取Calendar实例的方法
使用Calendar.getInstance()方法
一个Calendar的实例是系统时间的抽象表示,通过get(int field)方法来取得想要的时间信息。比如YEAR、MONTH、DAY_OF_WEEK、HOUR_OF_DAY、MINUTE、SECOND
public void set(int field,int value)
public void add(int field,int amount)
public final Date getTime()
public final void setTime(Date date)
Calendar calendar =Calendar.getInstance();//从一个 Calendar 对象中获取 Date 对象
Date date =calendar.getTime();//使用给定的 Date 设置此 Calendar 的时间
calendar.setTime(date);
calendar.set(Calendar.DAY_OF_MONTH,8);
System.out.println(“当前时间日设置为8后,时间是:” +calendar.getTime());
calendar.add(Calendar.HOUR,2);
System.out.println(“当前时间加2小时后,时间是:” +calendar.getTime());
calendar.add(Calendar.MONTH,-2);
System.out.println(“当前日期减2个月后,时间是:” + calendar.getTime());
当前时间日设置为8后,时间是:Thu Mar 08 09:56:14 CST 2018当前时间加2小时后,时间是:Thu Mar08 11:56:14 CST 2018当前日期减2个月后,时间是:Mon Jan08 11:56:14 CST 2018
还没有评论,来说两句吧...