CodeGym /Java Blog /এলোমেলো /জাভাতে সংখ্যাসূচক অপারেটর
John Squirrels
লেভেল 41
San Francisco

জাভাতে সংখ্যাসূচক অপারেটর

এলোমেলো দলে প্রকাশিত
ওহে! আজ আমরা একটি অত্যন্ত গুরুত্বপূর্ণ বিষয় বিবেচনা করব, যথা, জাভাতে সংখ্যাসূচক অপারেটর
জাভাতে সংখ্যাসূচক অপারেটর - 1
প্রোগ্রামিং, সংখ্যা সর্বত্র আছে. আপনি যদি গভীরভাবে খনন করেন এবং উচ্চ বিদ্যালয়ের কথা মনে রাখেন, আপনি মনে করতে পারেন যে একটি কম্পিউটার একটি সংখ্যাসূচক বিন্যাসে সমস্ত তথ্য উপস্থাপন করে: শূন্য এবং একের সমন্বয়, যা বাইনারি কোড নামেও পরিচিত।
জাভাতে সংখ্যাসূচক অপারেটর - 2
প্রোগ্রামিং-এ প্রচুর সংখ্যাসূচক অপারেটর রয়েছে, তাই আমরা তাদের মধ্যে সবচেয়ে গুরুত্বপূর্ণ অন্বেষণ করার জন্য উদাহরণ ব্যবহার করব :) আসুন সবচেয়ে সহজ দিয়ে শুরু করা যাক: গাণিতিক অপারেটর । এগুলি হল সুপরিচিত যোগ ( +), বিয়োগ ( -), গুণ ( *), এবং ভাগ ( /) অপারেটর।

public class Main {

   public static void main(String[] args) {

       int x = 999;
       int y = 33;

       System.out.println(x+y);
       System.out.println(x-y);
       System.out.println(x*y);
       System.out.println(x/y);
   }
}
কনসোল আউটপুট: 1032 966 32967 30 আপনি ইতিমধ্যে এই সমস্ত ব্যবহার করেছেন। এই গ্রুপে, আপনি অবশিষ্ট বা মডিউল ( %) অপারেটরে যোগ করতে পারেন।

public class Main {

   public static void main(String[] args) {

       int x = 33;
       int y = 33%2;
       System.out.println(y);
   }
}
কনসোল আউটপুট: 1 এই উদাহরণে, আমরা 33 কে 2 দ্বারা ভাগ করি। এটি একটি অতিরিক্ত "টেইল" (এক) সহ 16 দেয় যা 2 দ্বারা বিভাজ্য নয়। এই "টেইল" হল "বিভাগ থেকে অবশিষ্ট" অপারেশনের ফলাফল। জাভা তুলনা/রিলেশনাল অপারেটরও প্রয়োগ করে (ঠিক গণিতের মতো)। তারা সম্ভবত স্কুল থেকেই আপনার পরিচিত:
  • সমান ( ==)
  • ( >) এর চেয়ে বড়
  • কম ( <)
  • >=( ) এর চেয়ে বড় বা সমান
  • <=( ) এর চেয়ে কম বা সমান
  • সমান নয় ( !=)
এখানে আপনার একটি গুরুত্বপূর্ণ পয়েন্টে মনোযোগ দেওয়া উচিত যা অনেক নতুনদের ভুল করে। "সমান" অপারেটর লেখা হয় ==, নয় = জাভাতে, একটি একক =হল অ্যাসাইনমেন্ট অপারেটর, যেটি ব্যবহার করা হয় যখন একটি ভেরিয়েবলকে একটি সংখ্যা, স্ট্রিং বা অন্য ভেরিয়েবলের মান নির্ধারণ করা হয়।
জাভাতে সংখ্যাসূচক অপারেটর - 3

public class Main {

   public static void main(String[] args) {

       int x = 33;
       int y = 999;
       System.out.println(x=y);// We expect false to be displayed
   }
}
কনসোল আউটপুট: 999 ওহো! এটি স্পষ্টতই আমরা প্রত্যাশিত ফলাফল নয়। এটি একটি সম্পূর্ণ ভিন্ন ডেটা টাইপ: আমরা একটি বুলিয়ান দেখতে আশা করেছিলাম , কিন্তু আমরা একটি নম্বর পেয়েছি। সব কারণ আমরা একটি তুলনার পরিবর্তে বন্ধনীতে একটি অ্যাসাইনমেন্ট অপারেটর ব্যবহার করেছি । (999) এর মান ভেরিয়েবলের জন্য বরাদ্দ করা হয়েছিল এবং তারপরে আমরা এর মান প্রদর্শন করেছি । এটি করার সঠিক উপায় এখানে: x=yyxx

public class Main {

   public static void main(String[] args) {

       int x = 33;
       int y = 999;
       System.out.println(x==y);
   }
}
কনসোল আউটপুট: মিথ্যা এখন আমরা দুটি সংখ্যা সঠিকভাবে তুলনা করেছি! :) এখানে অ্যাসাইনমেন্ট অপারেটরের আরেকটি বৈশিষ্ট্য ( =): এটি একসাথে "শৃঙ্খল" হতে পারে:

public class Main {

   public static void main(String[] args) {

       int x = 999;
       int y = 33;
       int z = 256;

       x = y = z;
       System.out.println(x);
   }
}
কনসোল আউটপুট: 256 মনে রাখবেন অ্যাসাইনমেন্ট ডান থেকে বামে হয় । এই অভিব্যক্তি ( x = y = z) ধাপে কার্যকর করা হবে:
  • y = z, এটাই,y = 256
  • x = y, এটাই,x = 256

ইউনারি অপারেটর।

তাদের "ইউনো" শব্দ থেকে "ইউনারী" বলা হয় , যার অর্থ " এক "। তারা এই নামটি পেয়েছে কারণ, পূর্ববর্তী অপারেটরগুলির থেকে ভিন্ন, তারা একটি একক সংখ্যায় কাজ করে, একাধিক নয়। এর মধ্যে রয়েছে:
  • ইউনারি মাইনাস। এটি নম্বরের চিহ্নটি ফ্লিপ করে।


public class Main {

   public static void main(String[] args) {

       int x = 999;

       // Change the sign for the first time
       x = -x;
       System.out.println(x);

       // Change the sign for the second time
       x= -x;
       System.out.println(x);
   }
}
কনসোল আউটপুট: -999 999 আমরা ইউনারি মাইনাস অপারেটর দুইবার ব্যবহার করেছি। ফলে আমাদের সংখ্যা প্রথমে নেগেটিভ ছিল, তারপর আবার পজিটিভ হয়ে গেল!
  • বৃদ্ধি (++) এবং হ্রাস (--)
অপারেটর ++একটি সংখ্যা এক দ্বারা বৃদ্ধি করে, এবং --অপারেটর একই পরিমাণ দ্বারা একটি সংখ্যা হ্রাস করে।

public class Main {

   public static void main(String[] args) {

       int x = 999;
       x++;
       System.out.println(x);

       x--;
       System.out.println(x);
   }
}
কনসোল আউটপুট: 1000 999 আপনি যদি C++ ভাষা শুনে থাকেন তবে এই স্বরলিপিটি আপনার কাছে পরিচিত হতে পারে। এর নির্মাতারা এই আকর্ষণীয় নামটি এই ধারণাটি বোঝাতে ব্যবহার করেছেন যে "C++ হল C ভাষার একটি এক্সটেনশন" নোটপ্যাডের একটি জনপ্রিয় উন্নত সংস্করণকে বলা হয় Notepad++ এখানে একটি গুরুত্বপূর্ণ বিষয়। দুই ধরনের ইনক্রিমেন্ট এবং ডিক্রিমেন্ট অপারেটর রয়েছে: পোস্টফিক্স এবং প্রিফিক্সx++- পোস্টফিক্স ++x- উপসর্গ নম্বরের আগে বা পরে প্লাস/বিয়োগ দেওয়ার মধ্যে মৌলিক পার্থক্য কী? আমরা নিম্নলিখিত উদাহরণে দেখতে পাব:

public class Main {

   public static void main(String[] args) {

       int x = 999;
       int y = x++;
       System.out.println(y);
   }
}

কনসোল আউটপুট: 999 কিছু ঠিক নেই! আমরা 1 দ্বারা বৃদ্ধি করতে চেয়েছিলাম xএবং y ভেরিয়েবলে নতুন মান নির্ধারণ করতে চেয়েছিলাম। অন্য কথায়, y 1000 হওয়া উচিত। কিন্তু এর পরিবর্তে আমরা অন্য কিছু পাই: 999। মনে হচ্ছে x বাড়ানো হয়নি এবং ইনক্রিমেন্ট অপারেটর কাজ করেনি? কিন্তু এটা কাজ করেছে. নিজেকে সন্তুষ্ট করতে, xশেষে প্রদর্শন করার চেষ্টা করুন :)

public class Main {

   public static void main(String[] args) {

       int x = 999;
       int y = x++;
       System.out.println(y);
       System.out.println(x);
   }
}
কনসোল আউটপুট: 999 1000 আসলে, ঠিক এই কারণেই এই অপারেশনটিকে পোস্টফিক্স বলা হয়: এটি প্রধান অভিব্যক্তির পরে সঞ্চালিত হয়। এর মানে হল, আমাদের ক্ষেত্রে: int y = x++; y = xপ্রথমে সঞ্চালিত হয় (এবং ভেরিয়েবলটি yমানের সূচনা করা হবে x), এবং শুধুমাত্র তখনই x++কার্যকর করা হবে যদি এটি আমরা চাই এমন আচরণ না হয়? তারপর আমাদের উপসর্গ স্বরলিপি ব্যবহার করতে হবে :

public class Main {

   public static void main(String[] args) {

       int x = 999;
       int y = ++x;
       System.out.println(y);
   }
}
এই ক্ষেত্রে, ++xপ্রথমে প্রক্রিয়া করা হয় এবং শুধুমাত্র পরে হয় y = x; নিষ্পন্ন. একটি বাস্তব প্রোগ্রামে ভুল করা এড়াতে আপনার এখনই মেমরিতে এই পার্থক্যটি করা উচিত যেখানে পোস্টফিক্সের পরিবর্তে উপসর্গ ব্যবহার করলে সবকিছু উল্টে যেতে পারে :)

যৌগ অপারেটর

উপরন্তু, জাভা তথাকথিত যৌগ অপারেটর আছে. তারা দুটি অপারেটরকে একত্রিত করে:
  • অ্যাসাইনমেন্ট
  • পাটিগণিত অপারেটর
এর মধ্যে রয়েছে:
  • +=
  • -=
  • *=
  • /=
  • %=
আসুন একটি উদাহরণ বিবেচনা করা যাক:

public class Main {

   public static void main(String[] args) {

       int x = 999;
       int y = 33;

       x += y;
       System.out.println(x);
   }
}
কনসোল আউটপুট: 1032 x += y মানে x = x + y। সংক্ষিপ্ততার জন্য দুটি প্রতীক পরপর ব্যবহার করা হয়। সংমিশ্রণ -=, *=, /=এবং %=একইভাবে কাজ করে।

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

সাংখ্যিক অপারেটর ছাড়াও, জাভাতে বুলিয়ান মান ( সত্য এবং মিথ্যা ) জড়িত অপারেশন রয়েছে। এই অপারেশনগুলি লজিক্যাল অপারেটর ব্যবহার করে সঞ্চালিত হয়
  • !- যৌক্তিক নয় । এটি একটি বুলিয়ানের মানকে ফ্লিপ করে

public class Main {

   public static void main(String[] args) {

       boolean x = true;
       System.out.println(!x);
   }
}
কনসোল আউটপুট: মিথ্যা
  • &&- যৌক্তিক এবংউভয় অপারেন্ড সত্য হলেই এটি সত্য হয় ।

public class Main {

   public static void main(String[] args) {

       System.out.println(100 > 10 && 100 > 200);
       System.out.println(100 > 50 && 100 >= 100);
   }
}
কনসোল আউটপুট: মিথ্যা সত্য প্রথম অপারেশনের ফলাফল মিথ্যা, কারণ অপারেন্ডগুলির একটি মিথ্যা, যথা 100 > 200। সত্যে ফিরে আসার জন্য, &&অপারেটরের উভয় অপারেন্ড সত্য হওয়া প্রয়োজন (যেমনটি দ্বিতীয় লাইনের ক্ষেত্রে)।
  • ||- যৌক্তিক বা এটি সত্য ফেরত দেয় যখন অন্তত একটি অপারেন্ড সত্য হয়।
যখন আমরা এই অপারেটরটি ব্যবহার করি, আমাদের আগের উদাহরণটি একটি ভিন্ন ফলাফল তৈরি করে:

public class Main {

   public static void main(String[] args) {

       System.out.println(100 > 10 || 100 > 200);
   }
}
কনসোল আউটপুট: true অভিব্যক্তিটি 100 > 200এখনও মিথ্যা, কিন্তু OR অপারেটরের জন্য এটি সম্পূর্ণরূপে যথেষ্ট যে প্রথম অংশ ( 100 > 10) সত্য।
মন্তব্য
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION