㈠ 得到兩個日期之間的所有日期java

public static void main(String[] args) throws ParseException {
Calendar startCalendar = Calendar.getInstance();
Calendar endCalendar = Calendar.getInstance();
SimpleDateFormat df = new SimpleDateFormat("yyyy/M/d");
Date startDate = df.parse("2012/3/1");
startCalendar.setTime(startDate);
Date endDate = df.parse("2012/3/5");
endCalendar.setTime(endDate);
while(true){
startCalendar.add(Calendar.DAY_OF_MONTH, 1);
if(startCalendar.getTimeInMillis() < endCalendar.getTimeInMillis()){//TODO 轉數組或是集合,樓主看著寫吧
System.out.println(df.format(startCalendar.getTime()));
}else{
break;
}
}
}

㈡ Java如何計算2個日期之間相差多少天

/**
*計算兩個日期之間相差的天數
*@paramsmdate較小的時間
*@parambdate較大的時間
*@return相差天數
*@throwsParseException
*/
publicstaticStringdaysBetween(Datesmdate,Datebdate)throwsParseException{
smdate=sdf.parse(sdf.format(smdate));
bdate=sdf.parse(sdf.format(bdate));
Calendarcal=Calendar.getInstance();
cal.setTime(smdate);
longtime1=cal.getTimeInMillis();
cal.setTime(bdate);
longtime2=cal.getTimeInMillis();
longbetween_days=(time2-time1)/(1000*3600*24);
returnString.valueOf(between_days);
}

希望能幫助你。

㈢ JAVA中如何對兩個日期時間進行運算

/**
*計算兩個日期之間相差的天數
*@paramdate1
*@paramdate2
*@return
*/
publicstaticintdaysBetween(Datedate1,Datedate2)
{
Calendarcal=Calendar.getInstance();
cal.setTime(date1);
longtime1=cal.getTimeInMillis();
cal.setTime(date2);
longtime2=cal.getTimeInMillis();
longbetween_days=(time2-time1)/(1000*3600*24);

returnInteger.parseInt(String.valueOf(between_days));
}

㈣ java 如何實現兩個對兩個日期之間所有日期的遍歷

參考下面代碼
public static void main(String[] args) {

Calendar start = Calendar.getInstance();
start.set(2014, 6, 11);
Long startTIme = start.getTimeInMillis();

Calendar end = Calendar.getInstance();
end.set(2014, 7, 11);
Long endTime = end.getTimeInMillis();

Long oneDay = 1000 * 60 * 60 * 24l;

Long time = startTIme;
while (time <= endTime) {
Date d = new Date(time);
DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
System.out.println(df.format(d));
time += oneDay;
}
}

㈤ 怎麼求java,2個日期之間有多少天。。

用毫秒數計算已經不是正確方法了。原因是夏令時間會造成計算錯誤。差一小時就是差一天。如果對這方面有疑問,可以補充問題,我再詳細解答。
雖然在國內運用沒有問題,但是如果用於國際化的金融系統就不行了。
所以建議你在學習階段就認知,現代標准就是盡量不要使用毫秒數計算日期。

以下是正確方法:

public static long daysBetween(Calendar startDate, Calendar endDate) {
Calendar date = (Calendar) startDate.clone();
long daysBetween = 0;
while (date.before(endDate)) {
date.add(Calendar.DAY_OF_MONTH, 1);
daysBetween++;
}
return daysBetween;
}

㈥ java中知道兩個日期如何獲得兩個日期之間的天數

首先把獲取來的字元串日自期轉換成Date類型(從前台頁面獲取的是字元串類型的日期 a,b):
Date a1 = new SimpleDateFormat("yyyy-MM-dd").parse(a);
Date b1 = new SimpleDateFormat("yyyy-MM-dd").parse(b);
//獲取相減後天數
long day = (a1.getTime()-b1.getTime())/(24*60*60*1000);
希望可以幫到你。

㈦ java中知道兩個日期如何獲得兩個日期之間的天數

首先把獲取的字元串日期轉換成Date類型(從前台頁面獲取的是字元串類型的日期 a,b):
Date a1 = new SimpleDateFormat("yyyy-MM-dd").parse(a);
Date b1 = new SimpleDateFormat("yyyy-MM-dd").parse(b);
//獲取相減後天數
long day = (a1.getTime()-b1.getTime())/(24*60*60*1000);
希望可以幫到你。

㈧ java中怎樣判斷日期處於兩個日期中

public static void main(String[] args) {
String d1 = "13:00";
String d2 = "15:00";

String innerTime = "14:00";
SimpleDateFormat formatter = new SimpleDateFormat("HH:mm");
try {
Date dt1 = formatter.parse(d1);
Date dt2 = formatter.parse(d2);

Date stime = dt1.before(dt2) ? dt1 : dt2;
Date etime = dt1.after(dt2) ? dt1 : dt2;

Date inner = formatter.parse(innerTime);
boolean flag = inner.after(stime) && inner.before(etime);

System.out.println("是否在2個時間之間:" + flag);

} catch (Exception e) {
e.printStackTrace();
}

}

// 如果是日期自己更改format

㈨ java給定兩個日期,求兩個日期之間的日期段,以月為分隔~!

先得到
1月1日是周幾。。。。。多少周然後轉成天、整除7,,,,,,和1月1日是周幾對比

㈩ java中如何計算出兩個日期之間相差多少天

思路就是根據它們相差的毫秒數除以每天的毫秒數(60*60*24*1000),代碼如下:

public static void main(String[] args) throws ParseException {

String date1="1987-01-01";

String date2="2010-01-01";

SimpleDateFormat sdf=new SimpleDateFormat("yyyy-mm-dd");

Date d1=sdf.parse(date1);

Date d2=sdf.parse(date2);

long daysBetween=(d2.getTime()-d1.getTime()+1000000)/(60*60*24*1000);

System.out.println("1987-01-01 與 2010-01-01 相隔 "+daysBetween+" 天");

}

運行結果如下:

(10)java兩個日期之間擴展閱讀:

Java使用以下三種方法來比較兩個日期:

1、使用 getTime() 方法獲取兩個日期(自1970年1月1日經歷的毫秒數值),然後比較這兩個值。

2、使用方法 before(),after() 和 equals()。例如,一個月的12號比18號早,則 new Date(99, 2, 12).before(new Date (99, 2, 18)) 返回true。

3、使用 compareTo() 方法,它是由 Comparable 介面定義的,Date 類實現了這個介面。

SimpleDateFormat 是一個以語言環境敏感的方式來格式化和分析日期的類。SimpleDateFormat 允許你選擇任何用戶自定義日期時間格式來運行

例如:

SimpleDateFormat ft = new SimpleDateFormat ("yyyy-MM-dd hh:mm:ss");

這一行代碼確立了轉換的格式,其中 yyyy 是完整的公元年,MM 是月份,dd 是日期,HH:mm:ss 是時、分、秒。

注意:有的格式大寫,有的格式小寫,例如 MM 是月份,mm 是分;HH 是 24 小時制,而 hh 是 12 小時制。

以上實例編譯運行結果如下:

當前時間為: 2018-09-14 10:16:34

菜鳥教程-Java 日期時間