Calendar代替Date常用方法小記


業務邏輯中遇到日期的相關操作,整理一下小做總結

日期操作離不開 java.util.Calendar 和 java.util.Date ,實體類中日期字段設計也可能用到java.sql.Date。但目前使用中,Calendar為主,Date輔助,而且Date中的許多方法已過時,Calendar可99%替代,1%也是類型轉換時的臨時需要。這里僅結合實際使用簡單匯總如下:

     // 獲取當前各自日期實例
        Calendar calendar = Calendar.getInstance();
        Date date = new Date();

        // 相互轉換
        Date temp = calendar.getTime();
        calendar.setTime(date);

        // 設置時分秒,Calendar完全替換Date
        calendar.set(Calendar.HOUR_OF_DAY,9);
        calendar.set(Calendar.MINUTE,30);
        calendar.set(Calendar.SECOND,0);
        
        // 時間比較,Calendar完全替換Date+1
        Calendar calendar1 = Calendar.getInstance();
        // before/after參數可為Calendar或Date
        Boolean tem = calendar.before(calendar);
        Boolean tem1 = calendar.after(calendar);
        Boolean tem2 = calendar.after(date);
        
        // 日期格式轉換,commons-lang 
        // 日期轉字符串 Date--String
        String dateStr = DateFormatUtils.format(date,"yyyy-MM-dd HH:MM:SS");
        // 字符串轉日期 String--Date
        String[] pattern = new String[]{"yyyy-MM","yyyyMM","yyyy/MM",
                "yyyyMMdd","yyyy-MM-dd","yyyy/MM/dd",
                "yyyyMMddHHmmss",
                "yyyy-MM-dd HH:mm:ss",
                "yyyy/MM/dd HH:mm:ss"};
        String test = "2018-5-22";
        Date date1 = DateUtils.parseDate(test, pattern);

以上為當前業務中所用到的及常用的一些基本方法,后續用到再補充

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM