zoukankan      html  css  js  c++  java
  • Date类、SimpleDateFormat类

    Date

    构造方法:

    1、无参数构造方法:

    Date date = new Date();
    System.out.println(date);// Thu Mar 28 16:28:40 CST 2019,重写了toString方法,打印系统的当前时间
    ```、
    
    2、有参数的构造方法:参数为long类型
    

    Date date2 = new Date(73298479832L);
    System.out.println(date2);// Fri Apr 28 16:41:19 CST 1972,这是参数对应的时间

    
    ###成员方法:
    1、
    long getTime():把系统当前时间转化为毫秒值,相当于System.currentTimeMillis()
    
    
    ##SimpleDateFormat
    ###DateFormat类是一个抽象类
    java.text.DateFormat:是日期/时间格式化子类的抽象类
    作用:
    格式化(也就是日期 -> 文本)、解析(文本->日期)
    成员方法:
        String format(Date date):按照指定的格式把Date日期格式化为符合模式的字符串
        Date parse(String source):把符合模式的字符串解析为Date日期
    
    DateFormat是一个抽象类,无法直接创建对象,可以使用他的子类```java.text.SimpleDateFormat```创建对象
    java.text.SimpleDateFormat extends Date
    该类的构造方法:
    

    SimpleDateFormat(String pattern)
    // pattern是指定的模式
    // 写对应的模式,会把模式替换为对应的格式的日期,年月日时分秒这些字母不能变化,但是连接符号可以变化,比如:
    pattern1 = “yyyy-MM-dd HH:mm:ss";
    pattern2 = "yyyy年MM月dd日 HH时mm分ss秒”;

    ####使用DateFormat类中的format方法把日期格式转为文本:
    1、创建SimpleDateFormat对象,并且在构造方法中传递指定的模式字符串
    2、调用SimpleDateFormat对象的方法format,按照构造方法中的指定模式,将日期转化为字符串(文本)
    

    // 1、创建SimpleDateFormat对象,并且在构造方法中传递指定的模式字符串
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒");
    // 2、调用SimpleDateFormat对象的方法format,按照构造方法中的指定模式,将日期转化为字符串(文本)
    Date date = new Date();
    String d = sdf.format(date);

        System.out.println(date);// Thu Mar 28 19:57:38 CST 2019
        System.out.println(d);// 2019年03月28日 19时57分38秒
    
    
    ####使用DateFormat类中的parse方法,把文本解析为日期
    使用步骤:
    1、创建SimpleDateFormat对象,并且在构造方法中传递指定的模式字符串
    2、调用SimpleDateFormat对象的方法parse,把符合构造方法中的模式的字符串解析为日期
    注意:
        parse方法声明了一个异常叫ParseException,如果字符串和构造方法的模式不一样,就会抛出这个异常调用一个抛出异常的方法有两种处理方式,要么throw继续抛出这个异常,要么就try catch自己自己处理这个异常
    

    SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒");// 构造方法里的模式串

    Date date = sdf.parse("2019年03月28日 19时57分38秒");// 这个模式串要和构造方法的模式串一样(否则就有异常),返回的是一个Date对象
    System.out.println(date);// Thu Mar 28 19:57:38 CST 2019

    问题:一个人活了多少天了?
    步骤:
    计算一个人出生了多少天了
    1.Scanner输入出生日期
    2.使用DateFormat的parse方法把字符串转为Date对象
    3、把这个对象转化为毫秒值
    4、获取当前的毫秒值
    5、二者相减
    6、差值转为天
    
    

    public class Practise {
    public static void main(String[] args) throws ParseException {
    Scanner sc = new Scanner(System.in);
    System.out.println("Enter your birthday with format : yyyy-mm-dd");
    String date = sc.next();

        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        Date birthday = sdf.parse(date);
    
        long birthTime = birthday.getTime();
        long todayTime = new Date().getTime();
    
        long dis = todayTime - birthTime;
    
        System.out.println(dis/1000/60/60/24);
    }
    

    }

    
    

    Enter your birthday with format : yyyy-mm-dd
    1995-03-06
    8788

  • 相关阅读:
    jquery的图片异步加载
    thinkphp3.1的验证码
    android的edittext设置输入限制,只能输入数字
    android,安卓get请求的提交以及我遇到的异常
    android安卓开发基础小笔记,添加按钮事件,打开新窗体,窗体传值,回传
    php正则表达式函数
    php对浮点数小数取整,php除法取整数
    php数组全排列,元素所有组合
    javascript数组全排列,数组元素所有组合
    spring 配置中相关属性的含义:
  • 原文地址:https://www.cnblogs.com/zhuobo/p/10617134.html
Copyright © 2011-2022 走看看