2012-10-11 35 views
-1

日期我有一本字典在這些基本設置:查找最近從現在詞典

->Root 
--->Monday 
------->Date 1 
------->Date 2 
--->Tuesday 
------->Date 1 
------->Date 2 
--->Wednesday 
------->Date 1 
------->Date 2 
--->Thursday 
------->Date 1 
------->Date 2 
--->Friday 
------->Date 1 
------->Date 2 

我如何才能找到,從這個字典中,從所有這些值的最早日期?

假設日期發生變化,當前值是([NSDate date])我需要做什麼才能找到每天的循環,當天是第一個循環,並找到與當前日期最近的日期。

我希望我已經說清楚了。謝謝

+0

請問您能解釋一下結構嗎?週一不會總是在週二之前等嗎?物理日期是否與寫入日期字符串值不符? – propstm

+0

你的標題說得最早,你的問題說「離現在最近」,這是什麼? –

+0

另外,您的字典也設置爲每個鍵的日期數組? –

回答

1

你有一個根字典,有星期幾的密鑰。每週的每一天指向一個對象,它是'日期1'和'日期2'的字典(我所說的並不一定就是你所擁有的,這適用於任何結構)。我將使用「快速枚舉」,但也可以使用塊枚舉。

首先創建一個NSDate對象並將其設置爲'now'。

NSDate *date = [NSDate date]; 

for(NSString *key1 in root) { 
    NSDictionary *dates = [root objectForKey:key1]; 
    for(NSString *key2 in dates) { 
    NSDate *otherDate = [dates objectForKey:key2]; 

    date = [date earlierDate:otherDate]; 
    } 
} 

在結束日期將是最早的日期。

+0

對不起,但你能解釋一下你的//循環部分嗎?謝謝。 –