哦,這個代碼有什麼問題!?!?!問題使用NSString比較:選項:範圍,衝突的結果
NSString *s1 = @"5 Oct 2010 18:30";
NSString *s2 = @"5 Oct 2010 09:47";
NSRange range = {0, 11}; // Both "D MMM YYYY " and "DD MMM YYYY"
NSComparisonResult result = 0;
result = [s1 compare:s2 options:NSLiteralSearch range:range];
// result == -1
NSString *sa = [s1 substringWithRange:range];
NSString *sb = [s2 substringWithRange:range];
result = [sa compare:sb];
// result == 0
爲什麼我會從這兩個競賽中得到不同的結果?據我所知,他們應該是一樣的?
想要變得更加困惑? Try:result = [s1 compare:s1 options:NSLiteralSearch range:range]; – 2010-10-05 07:57:01
這是-1!比較完全壞了嗎? – JOM 2010-10-06 03:56:09