দুর্দান্ত বৈশিষ্ট্য। আমি কেবল স্ট্রিং.ফর্ম্যাটের চেয়ে ভাল কেন এটি জোরটি উল্লেখ করতে চাই যদি এটি কিছু লোকের কাছে প্রকাশ না হয়।
আমি প্যারামিটারগুলির সাথে মেলে "{0} {1} {2}" অর্ডার স্ট্রিং। ফর্ম্যাট বলছে এমন কাউকে পড়েছি। আপনাকে স্ট্রিং.ফর্ম্যাটটিতে "{0} {1} {2}" অর্ডার করতে বাধ্য করা হবে না, আপনি "{2} {0} {1}" করতেও পারেন। তবে, যদি আপনার 20 টির মতো অনেকগুলি প্যারামিটার থাকে তবে আপনি সত্যিই স্ট্রিংটিকে "} 0} {1} {2} ... {19}" তে সিকোয়েন্স করতে চান। যদি এটি একটি বদলে যাওয়া জগাখিচুড়ি হয় তবে আপনার প্যারামিটারগুলি সারিয়ে তুলতে আপনার খুব কষ্ট হবে।
$ এর সাহায্যে আপনি আপনার পরামিতিগুলি গণনা না করে প্যারামিটার ইনলাইন যুক্ত করতে পারেন। এটি কোডটি পড়া এবং বজায় রাখা আরও সহজ করে তোলে।
The এর ডাউনসাইডটি হ'ল, আপনি স্ট্রিংটিতে প্যারামিটারটি সহজেই পুনরায় করতে পারবেন না, আপনাকে এটি টাইপ করতে হবে। উদাহরণস্বরূপ, আপনি যদি সিস্টেম টাইপ করে ক্লান্ত হন E তবে, $ এ, আপনাকে এটি পুনরাবৃত্তি করতে হবে। আপনি $ "{0}" করতে পারবেন না এবং স্ট্রিং.ফোমেটে এটি পাস করতে পারবেন না কারণ $ "{0}" "0" প্রদান করে।
পার্শ্ব নোটে, আমি অন্য সদৃশ টিপোমিকের একটি মন্তব্য পড়েছি। আমি মন্তব্য করতে পারিনি, সুতরাং, এটি এখানে। সে বলল যে
string msg = n + " sheep, " + m + " chickens";
একাধিক স্ট্রিং অবজেক্ট তৈরি করে। এটি আসলে সত্য নয়। আপনি যদি একক লাইনে এটি করেন তবে এটি কেবল একটি স্ট্রিং তৈরি করে স্ট্রিং ক্যাশে রাখে।
1) string + string + string + string;
2) string.format()
3) stringBuilder.ToString()
4) $""
তাদের সমস্ত একটি স্ট্রিং ফিরে এবং ক্যাশে শুধুমাত্র একটি মান তৈরি করে।
অন্য দিকে:
string+= string2;
string+= string2;
string+= string2;
string+= string2;
ক্যাশে 4 টি পৃথক মান তৈরি করে কারণ সেখানে 4 ";" থাকে।
সুতরাং, নীচের মত কোড লেখা আরও সহজ হবে, তবে কার্লোস মুউোজ সংশোধন করার সাথে সাথে আপনি পাঁচটি ইন্টারপোল্টেড স্ট্রিং তৈরি করবেন:
string msg = $"Hello this is {myName}, " +
$"My phone number {myPhone}, " +
$"My email {myEmail}, " +
$"My address {myAddress}, and " +
$"My preference {myPreference}.";
আপনার কোড পড়তে খুব সহজ অবস্থায় এটি ক্যাশে একটি একক স্ট্রিং তৈরি করে। আমি পারফরম্যান্স সম্পর্কে নিশ্চিত নই, তবে, আমি নিশ্চিত এমএস ইতিমধ্যে এটি না করা থাকলে এটি অপ্টিমাইজ করবে।