JAVAは2つの日付の差の日数を比較します

3116 ワード

実際のアプリケーションでは、2つの日付の差の日数を比較することがよくあります.次に、javaメソッドで2つの日付の差の額日数を判断します.   
      具体的には、次のコードを参照してください.
     
package com.jd.jr.fclient.test;

import org.junit.Test;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

/**
 *      
 *
 * @author [email protected]
 * @since 2016/3/18 0018
 */

public class DateTest {


    /**
     *    Calendar           
     *            ,         
     *           ,          
     *
     *      :2016-03-18 11:59:59   2016-03-19 00:00:01      1
     *
     * @throws ParseException
     */
    @Test
    public void daysOfTwo_1() throws ParseException {
        SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
        //           
        //     :2016-03-18 11:59:59   2016-03-19 00:00:01      1
        Date fDate=sdf.parse("2015-12-31");
        Date oDate=sdf.parse("2016-01-01");
        Calendar aCalendar = Calendar.getInstance();
        aCalendar.setTime(fDate);
        int day1 = aCalendar.get(Calendar.DAY_OF_YEAR);
        aCalendar.setTime(oDate);
        int day2 = aCalendar.get(Calendar.DAY_OF_YEAR);
        int days=day2-day1;
        System.out.print(days);
    }

    /**
     *      ,            
     *
     *         
     *             
     *      :2016-03-18 11:59:59   2016-03-19 00:00:01      0
     *
     * @throws ParseException
     */
    @Test
    public void daysOfTwo_2() throws ParseException {
        SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
        //        
        //     :2016-03-18 11:59:59   2016-03-19 00:00:01      0
        Date fDate=sdf.parse("2015-12-31");
        Date oDate=sdf.parse("2016-01-01");
        long days=(oDate.getTime()-fDate.getTime())/(1000*3600*24);
        System.out.print(days);
    }




}

 
  
  
実際のニーズに応じて対応する計算方法を選択すればよい.
     2つの日付の差日数をJSで計算する値の計算方法を添付します.
     
var date1=new Date();  //    
alert("aa");
var date2=new Date();    //    
var date3=date2.getTime()-date1.getTime()  //       
 

//       
var days=Math.floor(date3/(24*3600*1000))
 
//      

var leave1=date3%(24*3600*1000)    //           
var hours=Math.floor(leave1/(3600*1000))
//       
var leave2=leave1%(3600*1000)        //            
var minutes=Math.floor(leave2/(60*1000))
 

//      
var leave3=leave2%(60*1000)      //            
var seconds=Math.round(leave3/1000)
 

alert("    "+days+"  "+hours+"   "+minutes+"   "+seconds+"  ")

 
  
 
     よし、ここまでにしよう