জাভাতে লজিক্যাল এবং রিলেশনাল অপারেটরদের জন্য একটি বিগিনার্স গাইড

জাভাতে লজিক্যাল এবং রিলেশনাল অপারেটরদের জন্য একটি বিগিনার্স গাইড

অপারেটর হল প্রতীক যা মান, ভেরিয়েবল বা স্টেটমেন্টে কাজ করতে ব্যবহৃত হয়। যে অভিব্যক্তিগুলির উপর তারা এই ক্রিয়া সম্পাদন করে তাকে অপারেন্ড বলা হয়। অপারেশনগুলি রিলেশনাল, সমতা এবং লজিক্যাল অপারেটরদের জন্য একটি বুলিয়ান ফলাফল (সত্য বা মিথ্যা) প্রদান করে।





একজন অপারেটর যে পরিমাণ অপারেটর নেয় তার ধরন নির্ধারণ করে। যে অপারেটর একটি অপারেন্ড নেয় তাকে বলা হয় 'ইউনারি'। যে অপারেটর দুটি অপারেন্ড নেয় তাকে 'বাইনারি' বলে।





আপনি কিভাবে জাভাতে লজিক্যাল এবং রিলেশনাল অপারেটর ব্যবহার করতে পারেন তা জানতে পড়ুন। আরও ভাল, বেশিরভাগ প্রোগ্রামিং ভাষা একই অপারেটর ব্যবহার করে যাতে আপনি এই জ্ঞান অন্য কোথাও প্রয়োগ করতে পারেন।





লজিক্যাল অপারেটর

প্রোগ্রামিং করার সময় এগুলো লজিক্যাল স্টেটমেন্ট তৈরিতে ব্যবহৃত হয়। জাভাতে ছয়টি লজিক্যাল অপারেটর রয়েছে। নীচের টেবিল তাদের সংক্ষিপ্তসার।

অপারেটরনামপ্রকার
|বুলিয়ান লজিক্যাল অথবাবাইনারি
&বুলিয়ান লজিক্যাল এবংবাইনারি
^বুলিয়ান লজিক্যাল এক্সক্লুসিভ অথবাবাইনারি
||শর্তাধীন বাবাইনারি
&&শর্তাধীন এবংবাইনারি
!যৌক্তিক নাএকক

যদি আপনি একটি বা উভয় শর্ত সত্য কিনা তা পরীক্ষা করতে চান, তাহলে এই অপারেটরটি ব্যবহার করুন। শর্ত হল একটি অভিব্যক্তি যা সত্য বা মিথ্যা হতে পারে।



বুলিয়ান লজিক্যাল ইনক্লুসিভ বা (|)

যৌক্তিক বা অভিব্যক্তি মূল্যায়ন করার আগে উভয় অপারেন্ড সত্য কিনা তা পরীক্ষা করে।

if ( dob <2005 | height <= 5){
money++;
}

উপরের উদাহরণটি কারও জন্মের তারিখ (ডব) 2005 এর চেয়ে কম হলে বা তার উচ্চতা 5 ফুটের কম বা সমান হলে তাকে আরও অর্থ দেবে।





বুলিয়ান লজিক্যাল এবং (&)

এই অপারেটরটি প্রোগ্রামে একটি নির্দিষ্ট এক্সিকিউশন পথ নেওয়ার আগে উভয় শর্ত সত্য কিনা তা পরীক্ষা করতে ব্যবহৃত হয়। সম্পূর্ণ অভিব্যক্তি মূল্যায়ন করার আগে উভয় শর্ত সত্য কিনা তা প্রথমে পরীক্ষা করে।

সম্পর্কিত: পাইথনে বুলিয়ান পদ্ধতি ব্যবহার করে স্ট্রিংগুলিকে কীভাবে বৈধ করা যায়





বুলিয়ান লজিক্যাল এক্সক্লুসিভ বা (^)

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

অভিব্যক্তি 1অভিব্যক্তি 2অভিব্যক্তি 1 ^ অভিব্যক্তি 2
মিথ্যামিথ্যামিথ্যা
মিথ্যাসত্যসত্য
সত্যমিথ্যাসত্য
সত্যসত্যমিথ্যা

বুলিয়ান শর্তাধীন এবং (&&)

এই অপারেটরটি লজিক্যাল AND এর অনুরূপ। পার্থক্যটি হল যে এটি প্রথমে পরীক্ষা করে যে ডানদিকে পরীক্ষা করার আগে বাম দিকের অবস্থা সত্য কিনা।

যদি বাম অংশটি মিথ্যা বলে প্রমাণিত হয়, তাহলে মৃত্যুদণ্ড অবিলম্বে বন্ধ হয়ে যায়। অন্যথায়, সঠিক অংশের মূল্যায়ন অব্যাহত থাকবে। এই বৈশিষ্ট্যটি শর্ট সার্কিট মূল্যায়ন হিসাবে পরিচিত।

এই অপারেটর সম্পর্কে আপনার বোঝার জন্য নীচের সত্য টেবিলটি দেখুন।

অভিব্যক্তি 1অভিব্যক্তি 2অভিব্যক্তি 1 && অভিব্যক্তি 2
মিথ্যামিথ্যামিথ্যা
মিথ্যাসত্যমিথ্যা
সত্যমিথ্যামিথ্যা
সত্যসত্যসত্য

শর্তাধীন বা (||)

যদি শর্তগুলির মধ্যে কোনটি মিথ্যা হয়, তবে কার্য সম্পাদন প্রোগ্রামের পরবর্তী অংশে চলে যাবে। অন্য কথায়, উভয় শর্তই সত্য হতে হবে।

এই অপারেটরটি লজিক্যাল OR এর অনুরূপ। এটি নির্দিষ্ট কোড চালানোর আগে একটি বা উভয় শর্ত সত্য কিনা তাও পরীক্ষা করে।

শর্তাধীন এবং অনুরূপ, যৌক্তিক বা শর্ট সার্কিট মূল্যায়ন ব্যবহার করে। ডানদিকে মূল্যায়ন করার আগে এটি প্রথমে পরীক্ষা করে যে বাম দিকের অপারেন্ডটি সত্য কিনা।

সম্পর্কিত: জাভাতে কনস্ট্রাক্টর কী এবং আপনি এটি কীভাবে ব্যবহার করবেন?

কিভাবে শব্দে একটি লাইন তৈরি করবেন

যদি বাম দিকের অবস্থাটি সত্য বলে প্রমাণিত হয়, তাহলে ডানটি পরীক্ষা করার দরকার নেই। অন্যথায়, ডানদিকে মূল্যায়ন অব্যাহত থাকবে।

যৌক্তিক নয় (!)

এই অপারেটরটি একটি শর্ত অস্বীকার করতে ব্যবহৃত হয়। এটি কেবল কী কাজ করছে তার অর্থকে উল্টে দেয়।

if(!(x>5)){
// statements
}

উপরের বিবৃতিটির অর্থ হল যদি 'x 5 এর চেয়ে বড়' সত্য না হয়, তাহলে যদি

অভিব্যক্তি (x> 5) সহ বৃত্তাকার বন্ধনীগুলির ব্যবহার লক্ষ্য করুন। আপনি যদি আপনার প্রোগ্রাম লেখার সময় এই বন্ধনীগুলি অন্তর্ভুক্ত না করেন, তাহলে আপনি একটি কম্পাইল-টাইম ত্রুটি পাবেন। কারণ হল কারণ ! একটি unary অপারেটর যে একটি শর্তে কাজ করে। বন্ধনী ছাড়া, কম্পাইলার এটিকে x> 5 নয়, অপারেটর হিসাবে কাজ করে ব্যাখ্যা করবে।

বন্ধনী অন্তর্ভুক্ত করা কেবল কম্পাইলারকে একটি অভিব্যক্তি সঠিকভাবে ব্যাখ্যা করতে সক্ষম করার জন্য নয়। এগুলি প্রোগ্রামারের আরও জটিল অভিব্যক্তিগুলি আরও ভালভাবে বোঝার উপায় হিসাবেও ব্যবহার করা যেতে পারে। নীচের উদাহরণটি দেখুন:

age >= 7 && height <5

কিছু লোককে যুক্তি দিয়ে অনুসরণ করা কঠিন মনে হতে পারে। অতএব, কিছু প্রোগ্রামার পঠনযোগ্যতার কারণে অপ্রয়োজনীয় বন্ধনী যুক্ত করতে পছন্দ করে:

(age >= 7) && (height <5)

রিলেশনাল অপারেটর

এই অপারেটরগুলি অপারেন্ডের মধ্যে সহজ সম্পর্ক তুলনা করতে ব্যবহৃত হয়।

অপারেটরনাম
>অপেক্ষা বৃহত্তর
<এর চেয়ে কম
> =এর চেয়ে বড় বা সমান
<=অপেক্ষাকৃত ছোট বা সমান

রিলেশনাল অপারেটরগুলি বোঝা বরং সহজ কারণ তাদের সকলেরই সাধারণ বীজগাণিতিক অপারেটরগুলির মতো একই অর্থ রয়েছে যা আপনি ইতিমধ্যে পরিচিত। ঐটাই বলতে হবে, > এবং < উপরের টেবিলে দেওয়া সেই অর্থই আপনি ইতিমধ্যেই জানেন।

if( x <= 7 ){
x++;
}

সর্বোপরি যদি স্টেটমেন্ট চেক করে যে x এর চেয়ে কম বা সমান 7.।

এখন সমতা অপারেটরদের উল্লেখ করার জন্য একটি ভাল সময় হবে। তাদের মধ্যে মাত্র দুটি আছে (সমান, == এবং! =, সমান নয়)। তাদের নাম অনুসারে, তারা দুটি অপারেন্ডের মধ্যে সমতা পরীক্ষা করতে ব্যবহৃত হয়।

সম্পর্কিত: জাভাতে অ্যারেগুলিতে কীভাবে অপারেশন তৈরি এবং সম্পাদন করবেন

সমতা অপারেটর (==) অ্যাসাইনমেন্ট অপারেটর (=) এর সাথে বিভ্রান্ত হবেন না। শিক্ষানবিশ প্রোগ্রামাররা দুজনকে মিশিয়ে দিতে পছন্দ করেন। এটি যুক্তিসঙ্গত কারণ বীজগণিতে প্রতীক (=) সমতা প্রকাশ করতে ব্যবহৃত হয়। যদিও এটি প্রোগ্রামিংয়ে ঠিক নয়।

অ্যাসাইনমেন্ট অপারেটর (=) একটি ভেরিয়েবলের জন্য একটি মান নির্ধারণ করে যখন সমতা অপারেটর (==) সমতার জন্য পরীক্ষা করে। পার্থক্য বুঝতে নীচের উদাহরণ দেখুন:

if(x=5){
// statements
}

উপরোক্ত কোডটি সর্বদা এক্সিকিউট করবে নির্বিশেষে x আসলে 5 এর সমান কিনা। এদিকে, নিচের কোডটি তখনই এক্সিকিউট হবে যদি x 5 এর সমান হয়। অতএব, দুটি মিশ্রিত না করা গুরুত্বপূর্ণ।

if(x==5){
// statements
}

উল্লেখিত দুটি সমতা অপারেটরের অগ্রাধিকার একই স্তরের, যদিও রিলেশনাল অপারেটরদের তুলনায় কম।

রিলেশনাল অপারেটরদেরও একই স্তরের অগ্রাধিকার রয়েছে। এই অপারেটরদের মৃত্যুদণ্ড বাম থেকে ডানে শুরু হয়।

জাভা অপারেটরদের আরও বিবেচনা

আপনি নিশ্চয়ই লক্ষ্য করেছেন যে কিছু অপারেটর এবং তাদের অপারেন্ডের মধ্যে হোয়াইটস্পেস আছে কিছু উদাহরণে, অন্যদের ক্ষেত্রে, নেই।

সেই জায়গার অনুপস্থিতি/উপস্থিতি আপনাকে চিন্তিত করবে না। কম্পাইলার এটি উপেক্ষা করবে। অতএব, নিম্নলিখিত অভিব্যক্তি একই জিনিস মানে:

Y>=7 // no whitespace
Y >= 7 // with whitespace

রিলেশনাল অপারেটর সাধারণত সাধারণ শর্ত প্রকাশ করতে ব্যবহৃত হয়। সহজ অবস্থাকে আরও জটিল অবস্থার সাথে একত্রিত করতে, আপনাকে লজিক্যাল অপারেটর ব্যবহার করতে হবে। লজিক্যাল অপারেটর একাধিক শর্ত পরীক্ষা করতে পারে, রিলেশনাল অপারেটরদের মত নয় যা শুধু একটি শর্ত পরীক্ষা করে।

এটি লক্ষণীয় যে লজিক্যাল অপারেটর (|, &, ^) বিটওয়াইজ অপারেটর হতে পারে যখন তাদের অবিচ্ছেদ্য অপারেন্ড থাকে। যখন বিটওয়াইজ অপারেটর হিসেবে ব্যবহার করা হয়, তখন তারা তাদের অপারেন্ডের বিটে কাজ করবে।

অপারেটরদের এই জ্ঞানের সাথে, আপনার এখন জাভা ক্লাসগুলি শিখতে প্রস্তুত হওয়া উচিত।

শেয়ার করুন শেয়ার করুন টুইট ইমেইল জাভাতে ক্লাস তৈরি করতে শিখুন

আপনি যদি জাভাতে প্রোগ্রাম করতে শিখছেন, তাহলে আপনাকে কিভাবে ক্লাস তৈরি করতে হবে তা জানতে হবে।

পরবর্তী পড়ুন
সম্পর্কিত বিষয়
  • প্রোগ্রামিং
  • জাভা
  • কোডিং টিউটোরিয়াল
লেখক সম্পর্কে জেরোম ডেভিডসন(22 নিবন্ধ প্রকাশিত)

জেরোম MakeUseOf এর একজন স্টাফ রাইটার। তিনি প্রোগ্রামিং এবং লিনাক্স সম্পর্কিত নিবন্ধগুলি জুড়েছেন। তিনি একজন ক্রিপ্টো উত্সাহী এবং সর্বদা ক্রিপ্টো শিল্পের উপর নজর রাখেন।

জেরোম ডেভিডসন থেকে আরো

আমাদের নিউজলেটার সদস্যতা

প্রযুক্তি টিপস, রিভিউ, ফ্রি ইবুক এবং এক্সক্লুসিভ ডিলের জন্য আমাদের নিউজলেটারে যোগ দিন!

সাবস্ক্রাইব করতে এখানে ক্লিক করুন