zoukankan      html  css  js  c++  java
  • Java中的日期、时间操作

    每次在处理日期时间的时候都要打开chrome查找一番,索性自己找一下满意的记录下来。

    一、时间格式

    // hh表示12小时制; HH表示24小时制
    SimpleDateFormat format1 = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss aa");
    

    二、获取当前时间及Date转为String

    1. 用Calendar

    Calendar cal = Calendar.getInstance();
    // 直接获取全部
    System.out.println(format1.format(cal.getTime()));
    // 也可以获取各个分量
    int Y, m, d, h, M, s;
    Y = cal.get(Calendar.YEAR);
    m = cal.get(Calendar.MONTH); // 注意这里是从0开始数的,要加1
    d = cal.get(Calendar.DATE);
    h = cal.get(Calendar.HOUR_OF_DAY); // 此处为24小时制;直接写HOUR就是12小时制
    M = cal.get(Calendar.MINUTE);
    s = cal.get(Calendar.SECOND);
    System.out.println(Y + " 年 " + (m + 1) + " 月 " + d + " 日 " + h + " 时 " + M + " 分 " + s + " 秒.");    
    

    2. 用Date

    Date date = new Date();
    System.out.println(format1.format(date));
    // Java标准格式输出时间
    System.out.println(date.toString());
    

    三、String转为Date格式

    与format相反的操作为parse

    SimpleDateFormat df1 = new SimpleDateFormat("yyyy-MM-dd");
    String str1 = "2019-05-10";
    String str2 = "2019-04-29";
    Date date1 = null, date2 = null;
    
    try {
        date1 = df1.parse(str1);
        date2 = df1.parse(str2);
    } catch (Exception e) {
        System.out.println("Unparseable using " + df1);
    }
    

    四、时间比较

    1. 使用getTime()转化为自1970年1月1日午夜十二时起已经过的毫秒数来比较

    public static boolean compare1(Date date1, Date date2) {
        long d1 = date1.getTime();
        long d2 = date2.getTime();
        if (d1 > d2)
            return true;
        return false;
    }
    

    2. 使用内置函数before after equals

    System.out.println(date1.after(date2));
    
  • 相关阅读:
    HDU 6071
    HDU 6073
    HDU 2124 Repair the Wall(贪心)
    HDU 2037 今年暑假不AC(贪心)
    HDU 1257 最少拦截系统(贪心)
    HDU 1789 Doing Homework again(贪心)
    HDU 1009 FatMouse' Trade(贪心)
    HDU 2216 Game III(BFS)
    HDU 1509 Windows Message Queue(队列)
    HDU 1081 To The Max(动态规划)
  • 原文地址:https://www.cnblogs.com/ben-future/p/10872634.html
Copyright © 2011-2022 走看看