2017-09-15 34 views
0

我想開發一個應用程序,用戶可以在其中分配 時間表給他們的小組成員,問題是假設我已經有 安排兩個不同的時間,現在又想安排相同的時間 那麼我將如何檢查在相同的時間進度是不是已經 分配或不如何查看可用時間以添加新時間表?

Date Start Time End Time status 

15-09-2017 10:05 13:10 TRUE 
15-09-2017 10:00 14:00 FALSE because 10:00-13:10 is already scheduled 
15-09-2017 08:20 09:00 TRUe 
15-09-2017 09:30 10:05 TRUE 
15-09-2017 09:40 10:05 false ` 

回答

-1

我建議你的EPOCH時間格式。

您可以將您的日期+啓動時間和日期+結束時間爲遵循例如:

Start date : "15-09-2017 10:05" 
End date : "15-09-2017 13:10" 

之後,你把這個字符串轉換EPOCH格式如下:

String str = "15-09-2017 10:05"; 
SimpleDateFormat df = new SimpleDateFormat("DD-mm-yyyy HH:mm"); 
Date date = df.parse(str); 
long epoch = date.getTime(); 

你爲結束和開始日期做它。您必須在最後3個長變量:

long epochStartDate , epochEndDate, epochToBeInserted. 

和插入你計劃之前,你比較

如果(epochToBeInserted在[epochStartDate,epochEndDate)=>插入假否則真。

+0

15-09-2017 10:00 14:00錯誤,因爲10:00-13:10已經安排好了。如何使用你的例子檢查這個條件? if(epochToBeInserted in [epochStartDate,epochEndDate]) –

+0

好吧,你看,你需要將15-09-2017 10:00 14:00轉換成2個日期(開始和結束)的時代,你將有2個變量(long1, long2)之後,你轉換10:00-13:10,你將有2個新的(var1,var2),然後你檢查(long1,long2)之間的(var2-var1) – 2017-09-15 06:39:56