স্ট্রিংগুলির অ্যারেরকে <স্ট্রিং> তালিকায় রূপান্তর করুন


162

.ToList()অ্যারের ধরণের সাহায্যে এটি করা উদাহরণগুলি দেখেছি , এটি কেবল নেট। 3.5+ এ উপলব্ধ বলে মনে হচ্ছে । আমি একটি এএসপি.নেট প্রকল্পে নেট নেট ফ্রেমওয়ার্ক 2.0 নিয়ে কাজ করছি যা এই মুহুর্তে আপগ্রেড করা যাবে না, তাই আমি ভাবছিলাম: অন্য কোনও সমাধান আছে কি? অ্যারে থেকে লুপিং করা এবং এই তালিকায় প্রতিটি উপাদান যুক্ত করার চেয়ে আরও মার্জিত একটি (যা কোন সমস্যা নয়; আমি কেবল ভাবছি যে শেখার উদ্দেশ্যে আরও ভাল সমাধান আছে কিনা)?

string[] arr = { "Alpha", "Beta", "Gamma" };

List<string> openItems = new List<string>();

foreach (string arrItem in arr)
{
    openItems.Add(arrItem);
}

যদি আমাকে এইভাবে এটি করতে হয়, আমি আমার তালিকায় এটি অনুলিপি করার পরে কি স্মৃতি থেকে দীর্ঘায়িত অ্যারে হ্রাস করার কোনও উপায় আছে?


1
আপনার পরিষ্কার করার বিষয়ে চিন্তা করবেন না arr, আবর্জনা সংগ্রহকারী আপনার চেয়ে আরও অনেক ভাল কাজ করবে।
— মাইক ক্রিস্টেনসেন

37
আপনি বিশেষভাবে। এবং আমি. আসলে, আমি মনে করি যে কেবল জোন স্কিকেই তার নিজের আবর্জনা সংগ্রহের অনুমতি দেওয়া হয়েছে।
— মাইক ক্রিস্টেনসেন

@ মাইক্রিসটেনসেন জন স্কিটি মন্তব্যের জন্য এটি সমর্থন করে প্রতিহত করতে পারেন নি। lol
— Ctrl এস

উত্তর:



26

.Net 3.5 থেকে আপনি লিনকিউ এক্সটেনশন পদ্ধতি ব্যবহার করতে পারেন যা (কখনও কখনও) কোড প্রবাহকে আরও ভাল করে তোলে।

ব্যবহার এর মতো দেখাচ্ছে:

using System.Linq; 

// ...

public void My()
{
    var myArray = new[] { "abc", "123", "zyx" };
    List<string> myList = myArray.ToList();
}

পুনশ্চ. ToArray()অন্যান্য পদ্ধতিতেও কাজ করে এমন একটি পদ্ধতি রয়েছে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.