2011-05-12 11 views
11

को समझा सकता है तो मैंने ऐप्पल के दस्तावेज़ को पढ़ा और कभी-कभी ऐसा लगता है कि ऐप्पल के दस्तावेज़ उद्देश्य पर बहुत जटिल हैं।यदि (NSOrderedAscending == परिणाम) कोई इस

NSStringCompareOptions compareOptions = NSDiacriticInsensitiveSearch; 

if(NSOrderedAscending == result) 

क्या इसका मतलब यह है कि तार मेल नहीं खाते?

उत्तर

45

NSOrderedAscending का अर्थ है: बाएं ऑपरेंड दाएं ऑपरेंड से छोटा है।NSOrderedDescending का अर्थ है विपरीत: बाएं ऑपरेंड दाएं ऑपरेंड से अधिक है।

समानता NSOrderedSame द्वारा समर्थित है: दो ऑपरेंड बराबर हैं।

+0

तारों के लिए छोटा मतलब क्या है? ASCII मान छोटा है? या स्ट्रिंग की लंबाई छोटी है? जो मुझे –

+2

@ कोको देव: भ्रमित तुलना का उपयोग करता है "लेक्सिकल ऑर्डरिंग" (या ग्रेड-स्कूल बच्चा वर्णमाला क्रम क्या कहता है) का उपयोग करता है। आपको "ASCII" से परे सोचने की आवश्यकता है, हालांकि - एनएसएसटींग्स ​​में गैर-ASCII वर्ण जैसे å या ç शामिल हो सकते हैं। कई मामलों में आप '-localizedCompare:' जैसी तुलना विधि का उपयोग करना चाहेंगे, जो वर्तमान लोकेल के लिए उपयुक्त तुलना/ऑर्डरिंग का उपयोग करता है। (उदाहरण के लिए, 'å' 'á' से पहले या बाद में आते हैं, या उन्हें "बराबर" माना जाना चाहिए? स्थानीयकृत तुलना विधियों को उस तरह की चीजों के बारे में पता है, इसलिए आपको यह नहीं करना है।) –

+0

धन्यवाद दोस्त :) – Markus

संबंधित मुद्दे