javase-Date的使用
package com.se.api; import java.util.Date; /* java.util.Date:表示日期和时间的类 类Date表示特定的时间,精确到毫秒 毫秒:千分之一秒,1000毫秒=1秒 特定的瞬间,一个时间点 把日期转化成毫秒 2099-01-01到2088-01-01中间一共有多少天? 可以把日期转换为毫秒进行计算,计算完毕,在把毫秒转换为日期 把日期转化成毫秒: 当前日期:2088-01-01 时间原点(0毫秒) 1970-01-01 00:00:00 就是计算当前日期到时间原点之间一共经历了多少毫秒 */ public class MainDemo1 { public static void main(String[] args) { System.out.println(System.currentTimeMillis()); //获取当前系统的时间的毫秒值 demo1(); } /* Date类的空参数构造方法 Date()获取的就是当前系统的日期和时间 */ public static void demo1(){ Date date=new Date(); System.out.println(date); //带参数方法,把毫秒值转化为日期值 Date d2=new Date(System.currentTimeMillis()); System.out.println(d2); } }
package com.se.api; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; /* java.text.DateFormat:是日期/时间格式化子类的抽象类 作用: 格式化:(也就是日期-》文本) 解析(文本-》日期) 成员方法: string format(Date date) 按照指定的模式,把Date日期,格式化为符合模式的字符串 Date parse(String source) 把符合模式的字符串,解析为Date日期 DateFormat类是一个抽象类,无法直接创建对象使用,可以使用DateFormat的子类 java.text.SimpleDateFormat extends DateFormat 构造方法: SimpleDateFormat(String pattern) 用指定的模式和默认语言的日期格式符号构造SimpleDateFormat 参数: String pattern:传递指定的模式 模式:区分大小写的 y 年 M 月 d 日 H 时 m 分 s 秒 写对应的模式,会把模式替换为对应的日期和时间 “yyyy-MM-dd HH:mm:ss” 注意: 模式中的字母不能更改,连接模式的符号可以改变。 */ public class Maindemo2 { public static void main(String[] args) { Date d1=new Date(System.currentTimeMillis()); demo1(d1); demo2(); } /* 把时间毫秒转化成一定的格式 */ public static void demo1(Date d1){ SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String time=sdf.format(d1); System.out.println(d1); System.out.println(time); } // public static void demo2(){ SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date d2=new Date(System.currentTimeMillis()); String time=sdf.format(d2); System.out.println(time); try { System.out.println(sdf.parse(time)); //将日期转回原来的模式 } catch (ParseException e) { e.printStackTrace(); } } }
输入日期转化成毫秒
public static void demo4(){ Scanner sc=new Scanner(System.in); SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd"); String date=sc.next(); long millionSeconds = 0;//毫秒 try { millionSeconds = sdf.parse(date).getTime(); } catch (ParseException e) { e.printStackTrace(); } System.out.println(millionSeconds); }
一纸高中万里风,寒窗读破华堂空。
莫道长安花看尽,由来枝叶几相同?