2010-06-30 14 views

उत्तर

19

लगता है जैसे आप Array.Sort विधि का उपयोग करना चाहते हैं।

Array.Sort(myArray) 

कई भार के, कुछ है जो कस्टम comparers (वर्ग या प्रतिनिधियों) ले रहे हैं, लेकिन डिफ़ॉल्ट एक वर्णानुक्रम छँटाई (आरोही) क्या करना चाहिए के रूप में आप चाहते हैं लगते हैं।

+1

+1 केवल अपने डिफ़ॉल्ट व्यवहार का उल्लेख करने के लिए। यह वर्णानुक्रम के विपरीत विपरीत नहीं होगा, आपको इसे चालित करने या अपने स्वयं के प्रकार को लागू करने की आवश्यकता है। –

+1

या बस .ॉर्ट() यदि वे एक सूची – simendsjo

+1

+1 में हैं, तो अधिक जटिल सॉर्टिंग के लिए उत्कृष्ट जवाब, मैं आईसीओम्पेरबल इंटरफ़ेस या लिंक की सॉर्ट अभिव्यक्ति पर एक नज़र डालेगा – armannvg

2
class Program 

    { 
     static void Main() 
     { 
      string[] a = new string[] 
      { 
       "Egyptian", 
       "Indian", 
       "American", 
       "Chinese", 
       "Filipino", 
      }; 
      Array.Sort(a); 
      foreach (string s in a) 
      { 
       Console.WriteLine(s); 
      } 
     } 
    } 
1

Array.Sort भी एक पूर्वानुमान-अधिभार प्रदान करता है। एक 2d सरणी

string[] myArray = ...; 
string[] sorted = myArray.OrderBy(o => o).ToArray(); 

LINQ भी आप empoweres सॉर्ट करने के लिए:

string[,] myArray = ...; 
string[,] sorted = myArray.OrderBy(o => o[ROWINDEX]).ThenBy(t => t[ROWINDEX]).ToArray(); 

Array.Sort(myArray, (p, q) => p[0].CompareTo(q[0])); 

तुम भी LINQ उपयोग कर सकते हैं अपने सरणी को क्रमबद्ध करने वाले: आप अपने वहाँ छँटाई-व्यवहार निर्दिष्ट कर सकते हैं

LINQ का डिफ़ॉल्ट सॉर्टिंग-व्यवहार वर्णानुक्रम भी है। आप इसके बजाय ऑर्डरबैडसेकेंडिंग()/फिरबीडस्केंडिंग() का उपयोग करके इसे उलट सकते हैं।

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

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