Skill

অপারেটরস এবং এক্সপ্রেশন

জাভা প্রোগ্রামিং (Java Programming) - Computer Programming

387

Java-তে অপারেটরস এবং এক্সপ্রেশন প্রোগ্রামিং লজিক তৈরি করতে সাহায্য করে। অপারেটর বিভিন্ন অপারেশন সম্পাদন করে, যেমন গণনা, তুলনা, লজিক্যাল অপারেশন ইত্যাদি। অপারেটর এবং এক্সপ্রেশনের মাধ্যমে বিভিন্ন শর্ত এবং ক্রিয়া সম্পন্ন করা যায়।


অপারেটরস (Operators)

Java-তে বিভিন্ন ধরনের অপারেটর রয়েছে, যা ভিন্ন ভিন্ন কাজ সম্পাদন করে। প্রধানত অপারেটরগুলো কয়েকটি ভাগে বিভক্ত:

  1. Arithmetic Operators
  2. Assignment Operators
  3. Comparison (Relational) Operators
  4. Logical Operators
  5. Bitwise Operators
  6. Unary Operators
  7. Ternary Operator

১. Arithmetic Operators

Arithmetic Operators গণিত সম্পর্কিত অপারেশন সম্পন্ন করতে ব্যবহৃত হয়।

অপারেটরকাজউদাহরণ
+যোগa + b
-বিয়োগa - b
*গুণa * b
/ভাগa / b
%ভাগশেষa % b

উদাহরণ:

int a = 10, b = 5;
System.out.println("Sum: " + (a + b));       // 15
System.out.println("Difference: " + (a - b)); // 5

২. Assignment Operators

Assignment Operators ভেরিয়েবলে মান সংরক্ষণ করতে ব্যবহৃত হয়।

অপারেটরকাজউদাহরণ
=অ্যাসাইনa = 10
+=যোগ এবং অ্যাসাইনa += 5 (a = a + 5)
-=বিয়োগ এবং অ্যাসাইনa -= 5 (a = a - 5)
*=গুণ এবং অ্যাসাইনa *= 5 (a = a * 5)
/=ভাগ এবং অ্যাসাইনa /= 5 (a = a / 5)
%=ভাগশেষ এবং অ্যাসাইনa %= 5 (a = a % 5)

উদাহরণ:

int a = 10;
a += 5; // a = 15
System.out.println(a);

৩. Comparison (Relational) Operators

Comparison Operators ভেরিয়েবলগুলোর মধ্যে সম্পর্ক নির্ধারণ করে।

অপারেটরকাজউদাহরণ
==সমান কিনাa == b
!=সমান নয় কিনাa != b
>বড় কিনাa > b
<ছোট কিনাa < b
>=বড় বা সমান কিনাa >= b
<=ছোট বা সমান কিনাa <= b

উদাহরণ:

int a = 10, b = 5;
System.out.println(a == b); // false
System.out.println(a > b);  // true

৪. Logical Operators

Logical Operators শর্তের মধ্যে লজিক্যাল অপারেশন সম্পন্ন করে।

অপারেটরকাজউদাহরণ
&&AND(a > b) && (a > c)
||ORa > b) || (a < 0
!NOT!(a > b)

উদাহরণ:

int a = 10, b = 5;
System.out.println((a > b) && (a > 0)); // true
System.out.println((a > b) || (a < 0)); // true

৫. Bitwise Operators

Bitwise Operators বাইনারি স্তরে অপারেশন সম্পন্ন করে।

অপারেটরকাজউদাহরণ
&ANDa & b
``OR
^XORa ^ b
~NOT~a
<<বাম দিকে শিফটa << 2
>>ডান দিকে শিফটa >> 2

উদাহরণ:

java

Copy code

int a = 5; // 0101 in binary int b = 3; // 0011 in binary System.out.println(a & b); // 0001 = 1 System.out.println(a | b); // 0111 = 7


৬. Unary Operators

Unary Operators একক ভেরিয়েবলের উপর অপারেশন সম্পন্ন করে।

অপারেটরকাজউদাহরণ
+ধনাত্মক+a
-ঋণাত্মক-a
++ইনক্রিমেন্টa++ বা ++a
--ডিক্রিমেন্টa-- বা --a
!লজিক্যাল NOT!a

উদাহরণ:

int a = 5;
System.out.println(++a); // 6
System.out.println(a--); // 6, but a becomes 5 after this

৭. Ternary Operator

Ternary Operator তিনটি অপারেশন সম্পন্ন করতে ব্যবহৃত হয় এবং একটি শর্তের ভিত্তিতে মান নির্ধারণ করে। এর গঠন হলো condition ? value_if_true : value_if_false

উদাহরণ:

int a = 10, b = 5;
int max = (a > b) ? a : b;
System.out.println("Max: " + max); // Max: 10

এক্সপ্রেশন (Expressions)

এক্সপ্রেশন হলো অপারেটর এবং অপারেন্ডের সংমিশ্রণ, যা একটি মান প্রদান করে। এক্সপ্রেশন প্রায়শই গাণিতিক, লজিক্যাল বা শর্তমূলক অপারেশন সম্পন্ন করে।

উদাহরণ:

int a = 5;
int b = 10;
int sum = a + b;          // Arithmetic expression
boolean result = (a < b);  // Comparison expression
int max = (a > b) ? a : b; // Ternary expression

সারসংক্ষেপ

Java-তে অপারেটর এবং এক্সপ্রেশন বিভিন্ন অপারেশন সম্পন্ন করে এবং প্রোগ্রামিং লজিক তৈরি করতে সাহায্য করে। অপারেটরগুলো বিভিন্ন ধরনের অপারেশন সম্পন্ন করে, যেমন গাণিতিক, লজিক্যাল, বিটওয়াইজ ইত্যাদি। এক্সপ্রেশন অপারেটর ও অপারেন্ডের সংমিশ্রণে একটি মান প্রদান করে।

Content added By

অ্যারিথমেটিক অপারেটরস (Arithmetic Operators) হলো প্রোগ্রামিং ভাষায় ব্যবহার করা অপারেটরগুলোর মধ্যে এমন কিছু অপারেটর যা গাণিতিক ক্রিয়াকলাপ সম্পন্ন করতে ব্যবহৃত হয়। Java সহ বেশিরভাগ প্রোগ্রামিং ভাষায় অ্যারিথমেটিক অপারেটরস দিয়ে সাধারণ গাণিতিক ক্রিয়াগুলি করা যায়, যেমন যোগ, বিয়োগ, গুণ, ভাগ ইত্যাদি।


Java তে অ্যারিথমেটিক অপারেটরস

অপারেটরনামউদাহরণফলাফল
+যোগ (Addition)a + ba এবং b এর যোগফল
-বিয়োগ (Subtraction)a - ba থেকে b বিয়োগ
*গুণ (Multiplication)a * ba এবং b এর গুণফল
/ভাগ (Division)a / ba কে b দিয়ে ভাগ
%ভাগশেষ (Modulus)a % ba কে b দিয়ে ভাগ করলে ভাগশেষ

উদাহরণসহ প্রতিটি অপারেটরের ব্যবহার

Java তে প্রতিটি অ্যারিথমেটিক অপারেটরের ব্যবহার দেখানো হলো:

public class ArithmeticOperators {
    public static void main(String[] args) {
        int a = 15;
        int b = 4;

        // Addition (যোগ)
        int sum = a + b;
        System.out.println("Addition (a + b): " + sum); // আউটপুট: 19

        // Subtraction (বিয়োগ)
        int difference = a - b;
        System.out.println("Subtraction (a - b): " + difference); // আউটপুট: 11

        // Multiplication (গুণ)
        int product = a * b;
        System.out.println("Multiplication (a * b): " + product); // আউটপুট: 60

        // Division (ভাগ)
        int quotient = a / b;
        System.out.println("Division (a / b): " + quotient); // আউটপুট: 3

        // Modulus (ভাগশেষ)
        int remainder = a % b;
        System.out.println("Modulus (a % b): " + remainder); // আউটপুট: 3
    }
}

ব্যাখ্যা:

  • Addition (a + b): a এবং b এর যোগফল হিসেবে sum পাওয়া যায়।
  • Subtraction (a - b): a থেকে b বিয়োগ করে difference পাওয়া যায়।
  • Multiplication (a * b): a এবং b এর গুণফল product এ সংরক্ষিত।
  • Division (a / b): a কে b দিয়ে ভাগ করলে quotient পাওয়া যায় (পূর্ণসংখ্যা হিসেবে)। এখানে ভাগফল দশমিকের অংশটি উপেক্ষা করা হয়।
  • Modulus (a % b): a কে b দিয়ে ভাগ করলে ভাগশেষ remainder এ সংরক্ষিত হয়।

গুরুত্বপূর্ণ বিষয়

ভাগ অপারেটর /: যখন দুটি পূর্ণসংখ্যার মধ্যে ভাগ করা হয়, তখন দশমিকের অংশ বাদ যায়। যদি দশমিক ফলাফল প্রয়োজন হয়, তবে float বা double টাইপ ব্যবহার করতে হবে।

java

Copy code

double x = 15; double y = 4; double result = x / y; System.out.println("Division with decimals (x / y): " + result); // আউটপুট: 3.75

Modulus অপারেটর %: এটি ভাগশেষ প্রদান করে, যা সংখ্যা জোড় বা বিজোড় কিনা, বা কোনো সংখ্যা নির্দিষ্ট সংখ্যায় বিভাজ্য কিনা তা নির্ধারণে কাজে লাগে। উদাহরণস্বরূপ, n % 2 == 0 হলে n জোড় সংখ্যা।


সারসংক্ষেপ

  • +: যোগফল বের করতে।
  • -: বিয়োগফল বের করতে।
  • ***: গুণফল বের করতে।
  • /: ভাগফল বের করতে (পূর্ণসংখ্যা বা দশমিক সহ)।
  • %: ভাগশেষ বের করতে।

Java তে অ্যারিথমেটিক অপারেটরস গাণিতিক কাজ সম্পাদনে ব্যবহৃত হয় এবং এসব অপারেটর সহজে এবং দ্রুত গাণিতিক ফলাফল পেতে সাহায্য করে।

Content added By

Java-তে রিলেশনাল অপারেটরস (Relational Operators) ভেরিয়েবলগুলোর মধ্যে সম্পর্ক নির্ধারণ করতে ব্যবহৃত হয়। এই অপারেটরগুলির মাধ্যমে দুটি ভেরিয়েবল বা এক্সপ্রেশনের তুলনা করা হয় এবং ফলাফল হিসেবে সত্য (true) বা মিথ্যা (false) মান প্রদান করে।

রিলেশনাল অপারেটরগুলো প্রায়শই শর্ত নির্ধারণের জন্য ব্যবহার করা হয়, যেমন if এবং while স্টেটমেন্টে।


Java তে রিলেশনাল অপারেটরস

অপারেটরবর্ণনাউদাহরণফলাফল
==সমান কিনা চেক করেa == btrue বা false
!=সমান নয় কিনা চেক করেa != btrue বা false
>বড় কিনা চেক করেa > btrue বা false
<ছোট কিনা চেক করেa < btrue বা false
>=বড় বা সমান কিনা চেক করেa >= btrue বা false
<=ছোট বা সমান কিনা চেক করেa <= btrue বা false

উদাহরণ ও ব্যবহার

নিচে বিভিন্ন রিলেশনাল অপারেটর ব্যবহার করে উদাহরণ দেখানো হলো:

public class RelationalOperatorsExample {
    public static void main(String[] args) {
        int a = 10;
        int b = 5;

        // == অপারেটর (সমান কিনা)
        System.out.println("a == b: " + (a == b)); // false

        // != অপারেটর (সমান নয় কিনা)
        System.out.println("a != b: " + (a != b)); // true

        // > অপারেটর (বড় কিনা)
        System.out.println("a > b: " + (a > b));   // true

        // < অপারেটর (ছোট কিনা)
        System.out.println("a < b: " + (a < b));   // false

        // >= অপারেটর (বড় বা সমান কিনা)
        System.out.println("a >= b: " + (a >= b)); // true

        // <= অপারেটর (ছোট বা সমান কিনা)
        System.out.println("a <= b: " + (a <= b)); // false
    }
}

আউটপুট:

a == b: false
a != b: true
a > b: true
a < b: false
a >= b: true
a <= b: false

রিলেশনাল অপারেটরসের ব্যবহার

রিলেশনাল অপারেটরগুলো সাধারণত if, while, এবং for স্টেটমেন্টে শর্ত নির্ধারণ করতে ব্যবহৃত হয়।

উদাহরণ ১: if স্টেটমেন্টে ব্যবহার

int age = 18;

if (age >= 18) {
    System.out.println("You are eligible to vote.");
} else {
    System.out.println("You are not eligible to vote.");
}

উদাহরণ ২: while লুপে ব্যবহার

int count = 1;

while (count <= 5) {
    System.out.println("Count is: " + count);
    count++;
}

সারসংক্ষেপ

রিলেশনাল অপারেটরস ভেরিয়েবলগুলোর মধ্যে সম্পর্ক নির্ধারণ করতে ব্যবহৃত হয় এবং সত্য বা মিথ্যা মান প্রদান করে। এগুলি শর্ত নির্ধারণ এবং লজিক্যাল স্টেটমেন্টে ব্যবহার করা হয়, যা প্রোগ্রামিং লজিক তৈরিতে সহায়ক।

Content added By

লজিক্যাল অপারেটরস (Logical Operators) Java প্রোগ্রামিং ভাষায় লজিক্যাল বা শর্তমূলক ক্রিয়াকলাপ সম্পাদন করতে ব্যবহৃত হয়। লজিক্যাল অপারেটরগুলোর মাধ্যমে দুটি বা ততোধিক শর্ত একত্রে যাচাই করা যায় এবং শর্তগুলির উপর ভিত্তি করে সিদ্ধান্ত নেওয়া যায়। Java-তে প্রধান তিনটি লজিক্যাল অপারেটর রয়েছে: && (AND), || (OR), এবং ! (NOT)।


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

অপারেটরনামব্যবহারের উদ্দেশ্য
&&লজিক্যাল ANDদুটি শর্তই সত্য হলে true রিটার্ন করে, অন্যথায় false
` অন্তত একটি শর্ত true হলে true রিটার্ন করে।
!লজিক্যাল NOTশর্তের মান বিপরীত করে, true কে false এবং false কে true করে।

লজিক্যাল অপারেটরসের উদাহরণ

public class LogicalOperators {
    public static void main(String[] args) {
        int age = 25;
        boolean hasLicense = true;

        // AND অপারেটর (&&)
        if (age >= 18 && hasLicense) {
            System.out.println("You are eligible to drive.");
        } else {
            System.out.println("You are not eligible to drive.");
        }

        // OR অপারেটর (||)
        boolean hasPassport = false;
        if (age >= 18 || hasPassport) {
            System.out.println("You can apply for the visa.");
        } else {
            System.out.println("You cannot apply for the visa.");
        }

        // NOT অপারেটর (!)
        boolean isMember = false;
        if (!isMember) {
            System.out.println("You need to become a member.");
        } else {
            System.out.println("Welcome, member!");
        }
    }
}

ব্যাখ্যা:

AND (&&) অপারেটর:

  • এখানে age >= 18 && hasLicense যাচাই করে যে, বয়স ১৮ বা তার বেশি এবং ড্রাইভিং লাইসেন্স রয়েছে কি না।
  • যদি উভয় শর্ত true হয় তবে এটি true রিটার্ন করে এবং আউটপুট হবে "You are eligible to drive."। অন্যথায় আউটপুট হবে "You are not eligible to drive."

OR (||) অপারেটর:

  • এখানে age >= 18 || hasPassport যাচাই করে যে বয়স ১৮ বা তার বেশি অথবা পাসপোর্ট আছে কি না।
  • যদি অন্তত একটি শর্ত true হয়, তবে এটি true রিটার্ন করে এবং আউটপুট হবে "You can apply for the visa."। অন্যথায় আউটপুট হবে "You cannot apply for the visa."

NOT (!) অপারেটর:

  • এখানে !isMember যাচাই করে isMember এর মান বিপরীত করে।
  • যদি isMember এর মান false হয়, তবে এটি true হয়ে আউটপুট হবে "You need to become a member."। অন্যথায় আউটপুট হবে "Welcome, member!"

লজিক্যাল অপারেটরসের ব্যবহারের কিছু গুরুত্বপূর্ণ বিষয়

সংযুক্ত শর্ত যাচাই: AND এবং OR অপারেটর ব্যবহার করে একাধিক শর্তের ভিত্তিতে সিদ্ধান্ত নেওয়া যায়। যেমন, বয়স এবং লাইসেন্স থাকার ভিত্তিতে ড্রাইভিং অনুমতি দেওয়া।

NOT অপারেটর ব্যবহার: NOT অপারেটর ! ব্যবহার করে শর্তের মান উল্টানো হয়। যেমন, সদস্য না হলে সদস্য হতে উৎসাহ দেওয়া।

উচ্চতর শর্ত পরীক্ষা: লজিক্যাল অপারেটর ব্যবহার করে জটিল শর্ত তৈরি করা যায় যা প্রোগ্রামের লজিক আরও শক্তিশালী করে তোলে।


সারসংক্ষেপ

  • && (AND): উভয় শর্ত true হলে true রিটার্ন করে।
  • || (OR): অন্তত একটি শর্ত true হলে true রিটার্ন করে।
  • ! (NOT): শর্তের মান বিপরীত করে, true হলে false এবং false হলে true রিটার্ন করে।

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

Content added By

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


অ্যাসাইনমেন্ট অপারেটরস (Assignment Operators)

অ্যাসাইনমেন্ট অপারেটরস ভেরিয়েবলে মান অ্যাসাইন বা প্রদান করতে ব্যবহৃত হয়। Java তে বিভিন্ন ধরনের অ্যাসাইনমেন্ট অপারেটর রয়েছে, যা সরাসরি মান নির্ধারণ বা গণনার মাধ্যমে মান প্রদান করতে পারে।

অপারেটরকাজউদাহরণব্যাখ্যা
=সাধারণ মান প্রদানa = 10;a-তে ১০ মান রাখা হয়
+=যোগ এবং অ্যাসাইনa += 5;a = a + 5;
-=বিয়োগ এবং অ্যাসাইনa -= 3;a = a - 3;
*=গুণ এবং অ্যাসাইনa *= 4;a = a * 4;
/=ভাগ এবং অ্যাসাইনa /= 2;a = a / 2;
%=ভাগশেষ এবং অ্যাসাইনa %= 3;a = a % 3;

উদাহরণ:

public class AssignmentOperatorsExample {
    public static void main(String[] args) {
        int a = 10;

        a += 5;  // a = a + 5
        System.out.println("a += 5: " + a); // 15

        a -= 3;  // a = a - 3
        System.out.println("a -= 3: " + a); // 12

        a *= 2;  // a = a * 2
        System.out.println("a *= 2: " + a); // 24

        a /= 4;  // a = a / 4
        System.out.println("a /= 4: " + a); // 6

        a %= 3;  // a = a % 3
        System.out.println("a %= 3: " + a); // 0
    }
}

টার্নারি অপারেটর (Ternary Operator)

টার্নারি অপারেটর হলো একটি সংক্ষিপ্ত শর্তমূলক অপারেটর, যা if-else স্টেটমেন্টের বিকল্প হিসেবে কাজ করে। এটি তিনটি অংশ নিয়ে গঠিত: শর্ত, সত্য মান এবং মিথ্যা মান।

সাধারণ গঠন:

variable = (condition) ? value_if_true : value_if_false;

ব্যাখ্যা:

  • condition: শর্তটি পর্যালোচনা করা হয়। যদি এটি সত্য হয়, তাহলে value_if_true প্রদান করা হয়, নতুবা value_if_false প্রদান করা হয়।

উদাহরণ:

public class TernaryOperatorExample {
    public static void main(String[] args) {
        int a = 10, b = 5;

        // বড় সংখ্যাটি নির্ধারণ করতে
        int max = (a > b) ? a : b;
        System.out.println("Max: " + max); // Max: 10

        // ভোট দেওয়ার যোগ্যতা নির্ধারণ করতে
        int age = 18;
        String eligibility = (age >= 18) ? "Eligible to vote" : "Not eligible to vote";
        System.out.println("Eligibility: " + eligibility); // Eligible to vote
    }
}

টার্নারি অপারেটরের ব্যবহার

টার্নারি অপারেটর বিশেষ করে তখন ব্যবহার করা হয় যখন শর্ত নির্ধারণের জন্য সংক্ষিপ্ত কোডের প্রয়োজন হয়। এটি if-else স্টেটমেন্টের বিকল্প হিসেবে ব্যবহার করা যায় এবং প্রোগ্রামকে আরও সংক্ষিপ্ত করে তোলে।

if-else স্টেটমেন্টে:

int a = 10, b = 5;
int max;
if (a > b) {
    max = a;
} else {
    max = b;
}
System.out.println("Max: " + max);

টার্নারি অপারেটরে:

int max = (a > b) ? a : b;
System.out.println("Max: " + max);

সারসংক্ষেপ

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

Content added By
Promotion

Are you sure to start over?

Loading...