2008-10-30 19 views
38

सी # में सूची .ToArray() विधि है। मैं उलटा चाहता हूं, जहां एक सरणी एक सूची में बदल जाती है। मुझे पता है कि इसके माध्यम से एक सूची और लूप कैसे बनाएं, लेकिन मैं एक लाइनर को इसे वापस स्वैप करना चाहता हूं।string.split एक स्ट्रिंग देता है [] मुझे एक सूची चाहिए <string> क्या एक सरणी को किसी सूची में कनवर्ट करने के लिए एक लाइनर है?

मैं .NET 2.0 वातावरण में String.Split विधि का उपयोग कर रहा हूं, इसलिए LINQ, आदि मेरे लिए उपलब्ध नहीं है।

उत्तर

71
string s = ... 
new List<string>(s.Split(....)); 
+4

आप StringSplitOptions.RemoveEmptyEntries उपयोग करने के लिए यहाँ सावधान रहना चाहता हूँ या स्ट्रिंग खाली स्ट्रिंग होने पर आप किसी तत्व के बिना एक खाली स्ट्रिंग वाली सूची के साथ समाप्त हो सकते हैं। शायद आप जो चाहते हैं वह नहीं। – tvanfosson

+0

सच है, लेकिन यह परिणाम सूची में किए बिना समान है, इसलिए यह विभाजन कार्य से क्या चाहिए, और डेटा को कैसे संग्रहीत किया जाता है, इस पर निर्भर करता है। –

+1

बस इसका उल्लेख करना चाहता था क्योंकि खाली सूची और एक खाली तत्व के साथ एक सूची के बीच एक अर्थपूर्ण अंतर है। – tvanfosson

7
return new List<string>(stringArray); 
17

नेट 3.5 में, System.Linq नाम स्थान ToList<>() कहा जाता है एक विस्तार विधि भी शामिल है।

+0

धन्यवाद! वास्तव में मुझे क्या चाहिए। – David

4

तो आप सभी की जरूरत एक वस्तु है कि IList इंटरफ़ेस लागू करता है और आप नए आइटम जोड़ने की जरूरत नहीं है तो आप भी इस तरह यह कर सकता है:

IList<string> list = myString.Split(' ');