JavaRush /جاوا بلاگ /Random-UR /جاوا میں نمبر آپریشنز

جاوا میں نمبر آپریشنز

گروپ میں شائع ہوا۔
ہیلو! آج ہم ایک بہت اہم موضوع کو دیکھیں گے، یعنی جاوا میں نمبر آپریشنز ۔ نمبرز پروگرامنگ میں ہر جگہ ہوتے ہیں۔ اگر آپ اسکول کے نصاب کا جائزہ لیں تو آپ کو یاد ہوگا کہ کمپیوٹر پر تمام معلومات عددی شکل میں پیش کی جاتی ہیں - صفر اور ایک کے مجموعے - جسے بائنری کوڈ بھی کہا جاتا ہے۔ جاوا میں نمبر آپریشنز - 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 - ایک سے تقسیم نہیں ہوتی۔ یہ "دم" "تقسیم کے بقیہ" آپریشن کا نتیجہ ہوگا۔ Java (نیز ریاضی) موازنہ آپریٹرز کو لاگو کرتا ہے ۔ آپ شاید انہیں اسکول سے بھی جانتے ہیں:
  • برابر ( ==)
  • مزید ( >)
  • کم ( <)
  • >=( ) سے بڑا یا اس کے برابر
  • <=( ) سے کم یا اس کے برابر
  • برابر نہیں ( !=)
یہاں یہ ایک اہم نکتہ پر توجہ دینے کے قابل ہے جس میں بہت سے ابتدائی غلطیاں کرتے ہیں۔ "مساوات" آپریشن بطور لکھا جاتا ہے ==، اور ایک نشان کے ساتھ نہیں =۔ جاوا میں یونٹ سائن =ایک اسائنمنٹ آپریٹر ہے، جہاں ایک متغیر کو نمبر، سٹرنگ، یا دوسرے متغیر کی قدر تفویض کی جاتی ہے۔ جاوا میں نمبر آپریشنز - 3
public class Main {

   public static void main(String[] args) {

       int x = 33;
       int y = 999;
       System.out.println(x=y);// expect false to be printed to the console
   }
}
کنسول آؤٹ پٹ:

999
افوہ! یہ واضح طور پر وہ نتیجہ نہیں ہے جس کی ہمیں توقع تھی۔ یہ مکمل طور پر مختلف قسم کا ڈیٹا ہے: ہمیں دیکھنے کی توقع تھی boolean، لیکن ایک نمبر ملا۔ اس کی وجہ یہ ہے کہ قوسین میں ہمارے پاس اسائنمنٹ آپریشن ہے، موازنہ نہیں۔ x=y قدر y(999) متغیر کو تفویض کی گئی تھی x، اور پھر ہم نے اسے xکنسول پر پرنٹ کیا۔ درست آپشن:
public class Main {

   public static void main(String[] args) {

       int x = 33;
       int y = 999;
       System.out.println(x==y);
   }
}
کنسول آؤٹ پٹ:

false
اب ہم نے صحیح طریقے سے 2 نمبروں کا موازنہ کیا ہے! :) اسائنمنٹ آپریشن ( =) کی ایک اور خصوصیت یہ ہے کہ اسے "زنجیروں میں بند" کیا جا سکتا ہے:
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

یونری آپریشنز

انہیں لفظ "uno" - "one" سے "unary" کہا جاتا ہے۔ انہوں نے یہ نام حاصل کیا کیونکہ، پچھلے لوگوں کے برعکس، وہ ایک نمبر پر کئے جاتے ہیں، اور کئی پر نہیں. یہ شامل ہیں:
  • یونیری مائنس۔ یہ نمبر کے نشان کو الٹ دیتا ہے۔

    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 a 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++- postfix notation ++x- prefix notation اگر آپ نمبر سے پہلے یا بعد میں pluses اور minuses ڈالیں تو بنیادی فرق کیا ہے؟ آئیے ایک مثال میں دیکھتے ہیں:
public class Main {

   public static void main(String[] args) {

       int x = 999;
       int y = x++;
       System.out.println(y);
   }
}
کنسول آؤٹ پٹ:

999
کیا کچھ گڑبڑ ہے! ہم x1 سے اضافہ کرنا چاہتے تھے اور متغیر کو ایک نئی قدر تفویض کرنا چاہتے تھے 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_ صرف اختصار کی خاطر، لگاتار دو حروف استعمال ہوتے ہیں۔ یہ -=, *=, /=اور کے مجموعوں کے ساتھ بھی کام کرتا ہے %=۔

منطقی آپریشنز

نمبروں پر کارروائیوں کے علاوہ، جاوا میں بولین متغیرات - trueاور false. یہ کارروائیاں منطقی آپریٹرز کا استعمال کرتے ہوئے کی جاتی ہیں۔
  • !- "نہیں" آپریٹر۔ بولین متغیر کی قدر کو ریورس کرتا ہے۔

    public class Main {
    
       public static void main(String[] args) {
    
           boolean x = true;
           System.out.println(!x);
       }
    }

    کنسول آؤٹ پٹ:

    
    false

  • &&- آپریٹر "اور"۔ ایک قدر trueصرف اس صورت میں لوٹاتا ہے جب دونوں آپرینڈز ہوں true۔

    public class Main {
    
       public static void main(String[] args) {
    
           System.out.println(100 > 10 && 100 > 200);
           System.out.println(100 > 50 && 100 >= 100);
       }
    }

    کنسول آؤٹ پٹ:

    
    false
    true

    پہلے آپریشن کا نتیجہ ہے false، چونکہ ایک شرط غلط ہے، یعنی 100 > 200۔ آپریٹر کو &&واپس کرنے کے لیے trueتمام شرائط درست ہونے کی ضرورت ہے (جیسا کہ دوسری لائن میں، مثال کے طور پر) ۔

  • ||- "یا" آپریٹر۔ لوٹاتا ہے trueجب کاموں میں سے کم از کم ایک درست ہو۔

    یہاں ہماری پچھلی مثال مختلف طریقے سے کام کرے گی:

    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