हाय! आज आपण जावा मधील अंकीय ऑपरेटर्स या अत्यंत महत्त्वाच्या विषयावर विचार करू .
जावामधील संख्यात्मक ऑपरेटर - १
प्रोग्रामिंगमध्ये, संख्या सर्वत्र असतात. जर तुम्ही खोल खोदून हायस्कूल आठवत असाल, तर तुम्हाला आठवत असेल की संगणक सर्व माहिती संख्यात्मक स्वरूपात दर्शवतो: शून्य आणि एक यांचे संयोजन, ज्याला बायनरी कोड देखील म्हणतात.
जावा मधील संख्यात्मक ऑपरेटर - 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 ने भागतो. हे 2 ने भाग न येणार्‍या अतिरिक्त "शेपटी" (एक) सह 16 मिळते. हे "शेपटी" हे "भागाकारातील उर्वरित" ऑपरेशनचे परिणाम आहे. जावा तुलना/रिलेशनल ऑपरेटर (जसे गणिताप्रमाणे) देखील लागू करते. ते कदाचित तुम्हाला शाळेपासून देखील परिचित आहेत:
  • ==( ) च्या बरोबरीचे
  • >( ) पेक्षा मोठे
  • <( ) पेक्षा कमी
  • >=( ) पेक्षा मोठे किंवा समान
  • <=( ) पेक्षा कमी किंवा समान
  • समान नाही ( !=)
येथे आपण एका महत्त्वाच्या मुद्द्याकडे लक्ष दिले पाहिजे ज्यामुळे अनेक नवशिक्या चुका करतात. "समान" ऑपरेटर लिहिलेला आहे ==, नाही =. Java मध्ये, सिंगल हा असाइनमेंट= ऑपरेटर आहे , जो व्हेरिएबलला संख्या, स्ट्रिंग किंवा दुसर्‍या व्हेरिएबलचे मूल्य नियुक्त केल्यावर वापरला जातो.
जावा मधील संख्यात्मक ऑपरेटर - 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 च्या लोकप्रिय सुधारित आवृत्तीला 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. संक्षिप्ततेसाठी दोन चिन्हे सलगपणे वापरली जातात. संयोजन -=, *=, /=आणि %=त्याच प्रकारे कार्य करतात.

तार्किक ऑपरेटर

अंकीय ऑपरेटर्स व्यतिरिक्त, Java मध्ये बुलियन व्हॅल्यू ( true आणि false ) समाविष्ट असलेल्या ऑपरेशन्स देखील आहेत. हे ऑपरेशन लॉजिकल ऑपरेटर वापरून केले जातात
  • !- तार्किक नाही . हे बुलियनचे मूल्य फ्लिप करते

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) सत्य आहे.