আপনি যদি উপাদানটির সূচি চান, এটি এটি করবে:
int index = list.Select((item, i) => new { Item = item, Index = i })
.First(x => x.Item == search).Index;
// or
var tagged = list.Select((item, i) => new { Item = item, Index = i });
int index = (from pair in tagged
where pair.Item == search
select pair.Index).First();
আপনি প্রথম পাসে ল্যাম্বডা থেকে মুক্তি পেতে পারবেন না।
নোট করুন যে আইটেমটির অস্তিত্ব না থাকলে এটি নিক্ষেপ করবে। এটি নালাগুলি ইনটগুলি অবলম্বন করে সমস্যার সমাধান করে:
var tagged = list.Select((item, i) => new { Item = item, Index = (int?)i });
int? index = (from pair in tagged
where pair.Item == search
select pair.Index).FirstOrDefault();
আপনি যদি আইটেমটি চান:
// Throws if not found
var item = list.First(item => item == search);
// or
var item = (from item in list
where item == search
select item).First();
// Null if not found
var item = list.FirstOrDefault(item => item == search);
// or
var item = (from item in list
where item == search
select item).FirstOrDefault();
আপনি যদি মেলে এমন আইটেমের সংখ্যা গণনা করতে চান:
int count = list.Count(item => item == search);
// or
int count = (from item in list
where item == search
select item).Count();
আপনি যদি মেলে এমন সমস্ত আইটেম চান:
var items = list.Where(item => item == search);
// or
var items = from item in list
where item == search
select item;
এবং null
এই ক্ষেত্রে যে কোনও একটির জন্য তালিকাটি পরীক্ষা করতে ভুলবেন না ।
বা এর (list ?? Enumerable.Empty<string>())
পরিবর্তে ব্যবহার করুন list
।
মন্তব্যগুলিতে সহায়তা করার জন্য পাভেলকে ধন্যবাদ।