業務中遇到了時間選擇器的問題:
需要判斷:
1)開始日期<=結束日期
2)開始日期與結束日期相隔不大於1個月(不是30天)
//timeStar和timeEnd都是Int型數組,用於存放選中的年月日
//使用 calendar對象獲取選中的日期,新版本的Date類只剩下long整形的構造函數未過時
calendarStart.set(timeStar[0],timeStar[1],timeStar[2],0,0,0)
calendarEnd.set(timeEnd[0],timeEnd[1],timeEnd[2],0,0,0)
//判斷開始日期是否大於結束
if(calendarStart.time>calendarEnd.time){
//"開始日期大於結束日期"
return
}
//給開始日期加一個月,判斷是否小於結束日期
calendarStart.add(Calendar.MONTH,1)
if(calendarStart.time<calendarEnd.time){
//"開始日期與結束日期超過一個月"
return
}
在應用上多次測量發現:
1個月有時候是30天(4:30 - 5:30)
有時候是31天(7:30 - 8:30)
如果想穩定滿足30天,.add(Calendar.MONTH,1)可以用Day,30