| অপারেটর (Bitwise OR / Logical OR): অপারেন্ডগুলোর লজিক্যাল OR কম্পিউট করে। x | y রেজাল্ট true যদি x বা y যেকোনো একটি true হয়। অন্যথায় false। | অপারেটর দুই অপারেন্ডই ইভ্যালুয়েট করে এমনকি লেফট-হ্যান্ড true হলেও, যাতে অপারেশন রেজাল্ট true হয় راست-হ্যান্ডের ভ্যালু নির্বিশেষে।
|| অপারেটর (Conditional Logical OR / Short-circuiting): লজিক্যাল OR কম্পিউট করে। x || y রেজাল্ট true যদি x বা y যেকোনো একটি true হয়। অন্যথায় false। যদি x true হয়, তবে y ইভ্যালুয়েট করা হয় না। (শর্ট-সার্কিট)।
উদাহরণ ১: | (বিটওয়াইজ OR)
class Program
{
static void Main(string[] args)
{
int a = 4; // binary 100
int b = 3; // binary 011
int c = 0;
c = a | b; // 111 = 7
Console.WriteLine("Line 1 - Value of c is {0}", c);
Console.ReadLine();
}
}
আউটপুট
Value of c is 7
Here the values are converted to binary
4--100
3--011
Output 7 --111
উদাহরণ ২: || (শর্ট-সার্কিট OR)
static void Main(string[] args)
{
int a = 4, b = 3, c = 7;
if (a > b || b > c) // a>b true, তাই b>c চেক হবে না
System.Console.WriteLine("a is largest");
else
System.Console.WriteLine("a is not largest");
Console.ReadLine();
}
আউটপুট
a is largest
সারসংক্ষেপ: বুলিয়ান লজিকের জন্য সবসময় || ব্যবহার করুন (শর্ট-সার্কিট, ফাস্টার)। | ব্যবহার করুন বিটওয়াইজ অপারেশনের জন্য বা যখন দুটি কন্ডিশনই ইভ্যালুয়েট করতে চান (সাইড-ইফেক্টসহ)।