टर्नरी बनाम if/else
किसे कब इस्तेमाल करें
टर्नरी बनाम if/else, CoddyKit पर Java Academy का एक निःशुल्क पाठ है। यह 4 में से 3वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह Java Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Java Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
एक काम के दो साधन
टर्नरी ऑपरेटर और if/else दोनों आपको किसी शर्त के आधार पर अलग शाखा चुनने देते हैं।
मुख्य अंतर यह है: टर्नरी एक अभिव्यक्ति है, जो मान देती है, जबकि if/else एक कथन है, जो क्रियाएँ चलाता है।
सही विकल्प चुनने से कोड स्पष्ट रहता है।
एक ही तर्क, दो तरीके
यह यदि/अन्यथा उम्र के आधार पर एक लेबल निर्दिष्ट करता है।
यह काम करता है, लेकिन एक साधारण चुनाव के लिए पाँच पंक्तियाँ लेता है।
int age = 16;
String status;
if (age >= 18) {
status = "adult";
} else {
status = "minor";
}टर्नरी वाला संस्करण
टर्नरी के रूप में वही मान-निर्देशन एक ही पंक्ति में आ जाता है।
यह चर घोषित करके उसका प्रारंभिक मान एक ही चरण में तय करता है और कोई दोहराव नहीं रहता।
int age = 16;
String status = age >= 18 ? "adult" : "minor";टर्नरी एक मान लौटाता है
टर्नरी एक अभिव्यक्ति है, इसलिए जहाँ भी किसी मान की अपेक्षा हो, वहाँ इसे रखा जा सकता है: मान निर्दिष्ट करने, लौटाने और तर्कों में।
if को मान के रूप में उपयोग नहीं किया जा सकता; यह केवल प्रवाह को नियंत्रित करता है।
public class Main {
public static void main(String[] args) {
int n = 5;
System.out.println(n > 0 ? "positive" : "non-positive");
}
}यदि/अन्यथा अधिक काम कर सकता है
यदि/अन्यथा हर शाखा में कई कथन चला सकता है: लॉग लिखना, कई चरों को अद्यतन करना और विधियों को कॉल करना।
टर्नरी केवल एक मान उत्पन्न करने तक सीमित है, इसलिए उसमें क्रियाओं का कोई खंड नहीं रखा जा सकता।
int balance = -10;
if (balance < 0) {
System.out.println("Overdrawn!");
balance = 0;
} else {
System.out.println("OK");
}पार्श्व प्रभावों के लिए यदि/अन्यथा रखें
यदि हर शाखा को कुछ करना हो, जैसे प्रिंट करना, सहेजना या अपवाद उत्पन्न करना, तो if/else का उपयोग करें।
टर्नरी किसी मान को चुनने के लिए हैं, क्रियाएँ करने के लिए नहीं। पार्श्व प्रभावों को टर्नरी में जबरन रखने से पठनीयता घटती है।
// Prefer if/else when branches act
boolean error = true;
if (error) {
System.out.println("Logging error");
}मान निर्दिष्ट करने के लिए टर्नरी का उपयोग करें
जब दोनों शाखाएँ केवल एक ही चर को मान निर्दिष्ट करती हों, तब टर्नरी दोहराव हटा देता है।
यदि/अन्यथा में चर का नाम दो बार दोहरता है; टर्नरी में उसे केवल एक बार लिखना पड़ता है।
public class Main {
public static void main(String[] args) {
int hour = 14;
String shift = hour < 12 ? "morning" : "afternoon";
System.out.println(shift);
}
}प्रकारों के नियम अलग होते हैं
टर्नरी के लिए दोनों शाखाओं का प्रकार संगत होना आवश्यक है, ताकि अभिव्यक्ति का एक ही प्रकार हो।
यदि/अन्यथा में ऐसा कोई नियम नहीं होता, क्योंकि हर शाखा स्वतंत्र होती है और कोई संयुक्त मान उत्पन्न नहीं करती।
// ternary: branches must be compatible types
boolean ok = true;
String msg = ok ? "yes" : "no";पठनीयता का संतुलन
छोटे और एकल चुनाव के लिए टर्नरी अधिक साफ़ होता है।
जटिल शर्तों या कई शाखाओं के लिए लंबी आंतरिक टर्नरी की तुलना में if/else if पढ़ना आसान होता है।
वही रूप चुनें जिसे भविष्य का पाठक सबसे जल्दी समझ सके।
दोनों को मिलाकर उपयोग करना
आप दोनों को मिला सकते हैं: नियंत्रण प्रवाह के लिए यदि/अन्यथा और किसी शाखा के अंदर छोटे मान-चयन के लिए टर्नरी का उपयोग करें।
इससे क्रियाएँ और मान-चयन अपने स्वाभाविक स्थानों पर रहते हैं।
public class Main {
public static void main(String[] args) {
int qty = 3;
if (qty > 0) {
String word = qty == 1 ? "item" : "items";
System.out.println(qty + " " + word);
}
}
}एक त्वरित मार्गदर्शिका
जब आप दो सरल मानों में से किसी एक को निर्दिष्ट या लौटाते हों, तब टर्नरी का उपयोग करें।
जब शाखाएँ कथन चलाती हों, पार्श्व प्रभाव रखती हों या तर्क कई शर्तों में फैला हो, तब यदि/अन्यथा का उपयोग करें।
त्वरित जाँच
टर्नरी के बजाय आपको यदि/अन्यथा को कब प्राथमिकता देनी चाहिए?
पुनरावलोकन
टर्नरी ऐसी अभिव्यक्तियाँ हैं जो कोई मान चुनती हैं; यदि/अन्यथा ऐसे कथन हैं जो क्रियाएँ चलाते हैं।
संक्षिप्त, एकल-मान वाले मान-निर्देशन और रिटर्न के लिए टर्नरी का उपयोग करें; पार्श्व प्रभावों, कई कथनों या जटिल शाखाओं के लिए यदि/अन्यथा का उपयोग करें।
सबसे स्पष्ट परिणाम के लिए दोनों को मिलाया भी जा सकता है।
एआई शिक्षक के साथ Java सीखें — निःशुल्क
अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।
- पाठ्यक्रम
- 104
- पाठ
- 374
अक्सर पूछे जाने वाले प्रश्न
क्या “टर्नरी बनाम if/else” पाठ निःशुल्क है?
हाँ—“टर्नरी बनाम if/else” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और Java Academy पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। Java Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
“टर्नरी बनाम if/else” में मैं क्या सीखूँगा?
किसे कब इस्तेमाल करें आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Java Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।
क्या Java Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?
पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Java Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 3वाँ पाठ है।
“टर्नरी बनाम if/else” पाठ पूरा करने में कितना समय लगता है?
CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।
क्या मैं इस Java Academy पाठ में कोड लिख और चला सकता हूँ?
हाँ। हर Java Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।
इस पाठ्यक्रम के सभी पाठ
- टर्नरी ऑपरेटर
- टर्नरी को नेस्ट करना
- टर्नरी बनाम if/else
- पठनीयता की समस्याएँ