আমি সম্প্রতি জাভা থেকে সরানো # সি ব্যবহার শুরু করেছি। আমি সূচী অনুসারে কীভাবে একটি তালিকা আইটেম পেতে পারি তা দেখতে পাচ্ছি না। জাভাতে তালিকার প্রথম আইটেমটি পেতে এটি হবে:
list1.get(0);
সি # তে সমমান কত?
আমি সম্প্রতি জাভা থেকে সরানো # সি ব্যবহার শুরু করেছি। আমি সূচী অনুসারে কীভাবে একটি তালিকা আইটেম পেতে পারি তা দেখতে পাচ্ছি না। জাভাতে তালিকার প্রথম আইটেমটি পেতে এটি হবে:
list1.get(0);
সি # তে সমমান কত?
উত্তর:
list1[0];
ধরে নিচ্ছি তালিকার ধরণের একটি সূচক সংজ্ঞায়িত করা আছে।
আপনি তালিকায় এলিমেন্টআট এক্সটেনশন পদ্ধতিটি ব্যবহার করতে পারেন।
উদাহরণ স্বরূপ:
// Get the first item from the list
using System.Linq;
var myList = new List<string>{ "Yes", "No", "Maybe"};
var firstItem = myList.ElementAt(0);
// Do something with firstItem
using System.Linq;
।
myList[0]
স্বরলিপি থেকে এই কোনও সুবিধা আছে ?
.ElementAtOrDefault();
myCollectionWhichMightBeNull?.ElementAt(0)
বা আবার অস্তিত্বের উপাদানটির সুরক্ষার জন্য:myCollection.ElementAtOrDefault(0)?.SomeProperty
ভিজ্যুয়াল বেসিক, সি #, এবং সি ++ সবার কাছে আইটেমের সম্পত্তিটির নাম ব্যবহার না করে অ্যাক্সেসের জন্য সিনট্যাক্স রয়েছে। পরিবর্তে, তালিকাটি সহ ভেরিয়েবলটি ব্যবহার করা হয় যেন এটি কোনও অ্যারে ছিল।
List[index]
উদাহরণস্বরূপ দেখুন: https://msdn.microsoft.com/en-us/library/0ebtbkkc(v=vs.110).aspx
পুরানো প্রশ্ন, তবে আমি দেখতে পাচ্ছি যে এই থ্রেডটি সম্প্রতি বেশ সক্রিয় ছিল, তাই আমি এগিয়ে গিয়ে আমার দুটি সেন্টে ফেলে দেব:
মিচ যা বলেছিল তা অনেক সুন্দর। যথাযথ সূচিকাগুলি ধরে নেওয়া, আপনি কেবল এগিয়ে যেতে পারেন এবং বর্গাকার বন্ধনী চিহ্নিতকরণটি ব্যবহার করতে পারেন যেমন আপনি কোনও অ্যারে অ্যাক্সেস করছেন। সংখ্যাসূচক সূচকটি ব্যবহার করার সাথে সাথে, যদিও আপনার সদস্যদের নির্দিষ্ট নাম থাকলে আপনি প্রায়শই এরকম কিছু লিখে টাইপ করে এক সাথে একযোগে অনুসন্ধান / অ্যাক্সেস করতে পারেন:
var temp = list1["DesiredMember"];
আপনি আরও জানেন, তাই না?
.NET List
ডেটা স্ট্রাকচার হ'ল Array
"মিউটেবল শেল"।
সুতরাং এর উপাদানগুলিতে অ্যাক্সেসের জন্য আপনি সূচকগুলি ব্যবহার করতে পারেন:
var firstElement = myList[0];
var secondElement = myList[1];
সি # 8.0 দিয়ে শুরু করে আপনি উপাদানগুলি অ্যাক্সেসের জন্য ক্লাস Index
এবং Range
ক্লাস করতে পারেন । তারা অনুক্রমের শেষে থেকে অ্যাক্সেস সরবরাহ করে বা কেবল ক্রমের একটি নির্দিষ্ট অংশে অ্যাক্সেস সরবরাহ করে:
var lastElement = myList[^1]; // Using Index
var fiveElements = myList[2..7]; // Using Range, note that 7 is exclusive
আপনি সূচি এবং রেঞ্জগুলি একত্রিত করতে পারেন:
var elementsFromThirdToEnd = myList[2..^0]; // Index and Range together
এছাড়াও আপনি লিনকিউ ElementAt
পদ্ধতি ব্যবহার করতে পারেন তবে 99% ক্ষেত্রে এটি সত্যিই প্রয়োজনীয় নয় এবং কেবল ধীর পারফরম্যান্স সমাধান।