C# এ নাল কোলেসিং অপারেটর কি

C E Nala Kolesim Aparetara Ki



সি# বিভিন্ন প্ল্যাটফর্মের জন্য দক্ষ এবং শক্তিশালী অ্যাপ্লিকেশন তৈরি করার জন্য ডিজাইন করা একটি বহুল ব্যবহৃত প্রোগ্রামিং ভাষা। ভাষা সহ অনেক উন্নত বৈশিষ্ট্য আছে নাল কোলেসিং অপারেটর , যা নাল মানগুলি পরিচালনা করার জন্য একটি কমপ্যাক্ট সিনট্যাক্স প্রদান করে জটিল কোডকে সহজ করতে সাহায্য করে। এই অপারেটরটি হ্যান্ডেল করার জন্য একটি সরল পদ্ধতির সন্ধানকারী বিকাশকারীদের মধ্যে জনপ্রিয় হয়ে উঠেছে খালি তাদের প্রকল্পের মান।

এই নিবন্ধটি বিস্তারিতভাবে যেতে হবে নাল কোলেসিং অপারেটর .







C# এ একটি নাল কোলেসিং অপারেটর কি

C#-এ, এর প্রতীক নাল কোলেসিং অপারেটর হয় ?? . একটি ভেরিয়েবল নাল হলে, এটি একটি ডিফল্ট মান দিতে ব্যবহৃত হয়।



উদাহরণস্বরূপ, যদি আমাদের একটি পরিবর্তনশীল থাকে এক্স এটি নাল হতে পারে এবং আমরা এটিকে 10 এর একটি ডিফল্ট মান নির্ধারণ করতে চাই যদি এটি নাল হয়, আমরা ব্যবহার করতে পারি নাল কোলেসিং অপারেটর নিম্নরূপ:



int y = x ?? 10





এই বিবৃতিটি এর মান নির্ধারণ করবে 10 y থেকে x যদি শূন্য হয়, অন্যথায়, এটি x এর মান নেবে।

এটি বাম অপারেন্ডের মান প্রদান করবে যদি এটি শূন্য না হয়। ডান-হাতের অপারেন্ড পরীক্ষা করা হয় এবং ফলাফলটি শূন্য হলে ফেরত দেওয়া হয়। বিকল্পভাবে, যদি বাম-হাতের অপারেন্ডটি নন-নাল-এ মূল্যায়ন করে, তবে এটি তার ডান-হাতের অপারেন্ডকে মূল্যায়ন করে না।



প্রথাগত উপায় ছাড়া কোড লিখুন নাল কোলেসিং অপারেটর হল:

যদি ( ফলাফল শূন্য )

ফিরে নতুন তালিকা < ব্যক্তি > ( ) ;

ফিরে ফলাফল;

আমরা এটিকে একটি একক লাইনে ঘনীভূত করতে পারি যাতে নন-নাল ডিফল্ট মান এবং নাল চেক উভয়ই রয়েছে নাল কোলেসিং অপারেটর :

ফিরে ফলাফল ?? নতুন তালিকা < ব্যক্তি > ( ) ;

কিছু গুরুত্বপূর্ণ পয়েন্ট সম্পর্কে মনে রাখা নাল কোলেসিং অপারেটর হয়:

  • একটি ভেরিয়েবল অবশ্যই বাম হাতের অপারেন্ড হতে হবে ?? অপারেটর.
  • ??= অপারেটরের বাম-হাতের অপারেন্ড একটি অ-নূলযোগ্য প্রকার হতে পারে না।
  • নাল-কোলেসিং অপারেটর ওভারলোড করা যাবে না।
  • নাল-কোলেসিং অপারেটর ডান-সহযোগী। এর মানে হল একটি ??= b ??= c এর মত একটি ??= (b ??= c) হিসাবে মূল্যায়ন করা হবে।

নাল কোলেসিং অপারেটরের ব্যবহার

এর ব্যবহার নাল কোলেসিং অপারেটর হয়:

1: ডিফল্ট মান প্রদান করা

nullable প্রকারের সাথে কাজ করার সময়, মানটি নাল হলে, আপনি ব্যবহার করতে পারেন নাল কোলেসিং অপারেটর একটি ব্যতিক্রম নিক্ষেপ করার পরিবর্তে একটি ডিফল্ট মান প্রদান করতে।

সিস্টেম ব্যবহার করে;

পাবলিক ক্লাস প্রোগ্রাম
{
পাবলিক স্ট্যাটিক অকার্যকর প্রধান ( )
{
int? nullableValue = null;
int মান = nullableValue ?? 10 ;
Console.WriteLine ( 'মান হল:' + মান ) ;
}
}

উপরের উদাহরণে, আমরা পূর্ণসংখ্যা সংজ্ঞায়িত করি nullableValue পরিবর্তনশীল এবং এটিকে শূন্যের একটি মান দিন। দ্য নাল কোলেসিং অপারেটর nullableValue null হলে মান পরিবর্তনশীলটিকে 10 এর একটি ডিফল্ট মান প্রদান করতে ব্যবহৃত হয়। এর পরে, মানটি কনসোলে প্রদর্শিত হয়।

2: নাল রেফারেন্স ব্যতিক্রম এড়ানো

বস্তু এবং অ্যারের মতো অত্যাধুনিক ডেটা স্ট্রাকচারের সাথে কাজ করার সময় নাল মান নাল রেফারেন্স ব্যতিক্রম হতে পারে। এই ব্যতিক্রমগুলি ব্যবহার করে এড়ানো যেতে পারে নাল কোলেসিং অপারেটর , যা ডিফল্ট মান প্রদান করে।

সিস্টেম ব্যবহার করে;

পাবলিক ক্লাস myClass
{
সর্বজনীন স্ট্রিং নাম { পাওয়া; সেট ; }
পাবলিক int আইডি { পাওয়া; সেট ; }
}
পাবলিক ক্লাস প্রোগ্রাম
{
পাবলিক স্ট্যাটিক অকার্যকর প্রধান ( )
{
myClass person = null;
স্ট্রিং নাম = ব্যক্তি?.নাম ?? 'অজানা' ;
int আইডি = ব্যক্তি?.আইডি ?? 0 ;
Console.WriteLine ( 'নাম:' + নাম ) ;
Console.WriteLine ( 'আইডি:' + আইডি ) ;
}
}

নাম এবং আইডি এর বৈশিষ্ট্যগুলি আমার ক্লাস উপরের কোডে ক্লাস। যাতে নিরাপদে অ্যাক্সেস করা যায় নাম এবং আইডি ব্যক্তি অবজেক্টের বৈশিষ্ট্য এবং সরবরাহের ডিফল্ট মানগুলি যদি শূন্য হয় তবে এটি একটি ব্যক্তি পরিবর্তনশীলকে নাল সেট করে এবং তারপর নাল কন্ডিশনাল অপারেটর (?.) ব্যবহার করে এবং নাল কোলেসিং অপারেটর (??)। তারপরে, কনসোলটি নাম এবং আইডি মান সহ মুদ্রিত হয়।

3: অপ্রয়োজনীয় যদি অন্য শর্তাবলী অপসারণ

আপনি আপনার কোডটিকে আরও সংক্ষিপ্ত এবং অপ্রয়োজনীয় করার প্রয়োজনীয়তা দূর করার জন্য নাল কোলেসিং অপারেটর ব্যবহার করতে পারেন যদি-অন্য শর্ত .

উদাহরণ স্বরূপ:

সিস্টেম ব্যবহার করে;

নামস্থান উদাহরণ
{
ক্লাস myClass
{
স্ট্যাটিক শূন্যতা প্রধান ( স্ট্রিং [ ] args )
{
int? nullableValue = null;
int মান;
যদি ( nullableValue ! = শূন্য )
{
মান = nullableValue.Value;
}
অন্য
{
মান = 10 ;
}
Console.WriteLine ( 'মান হল:' + মান ) ;
}
}
}

উপরের কোডে, নাল কোলেসিং অপারেটর ?? এর মান নির্ধারণ করতে ব্যবহৃত হয় nullableValue মান যদি nullableValue নাল নয়, তাহলে মানটির একই মান থাকবে nullableValue . যদি nullableValue শূন্য, তাহলে মানটির মান 10 হবে অন্যথায় যদি শর্ত আর প্রয়োজন নেই, এবং কোডটি এখন ছোট এবং বোঝা সহজ।

উপসংহার

দ্য নাল কোলেসিং অপারেটর C#-এ একটি শক্তিশালী বৈশিষ্ট্য যা বিকাশকারীরা তাদের প্রকল্পগুলিতে শূন্য মানগুলি পরিচালনা করার উপায়কে সহজ করে। এই অপারেটরটি শূন্য হতে পারে এমন ভেরিয়েবলে ডিফল্ট মান নির্ধারণ করতে একটি কমপ্যাক্ট, দক্ষ এবং নমনীয় বাক্য গঠন প্রদান করে। ব্যবহার করে নাল কোলেসিং অপারেটর , ডেভেলপাররা আরও পঠনযোগ্য, রক্ষণাবেক্ষণযোগ্য এবং দক্ষ কোড লিখতে পারে, উন্নয়ন প্রক্রিয়ায় সময় এবং শ্রম সাশ্রয় করে।