"टर्नरी अभिव्यक्ति" का x ? y : z
उपयोग केवल सशर्त असाइनमेंट के लिए किया जा सकता है । अर्थात्, आप कुछ ऐसा कर सकते हैं:
String mood = inProfit() ? "happy" : "sad";
क्योंकि त्रिगुट अभिव्यक्ति कुछ वापस कर रही है ( String
इस उदाहरण में प्रकार )।
यह वास्तव में एक छोटी, इन-लाइन के रूप में उपयोग करने के लिए नहीं है if-else
। विशेष रूप से, आप इसका उपयोग नहीं कर सकते हैं यदि व्यक्तिगत भागों में मान वापस नहीं आता है, या असंगत प्रकारों के मान वापस करते हैं। (इसलिए जब आप ऐसा कर सकते हैं यदि दोनों विधि समान मान लौटाने के लिए हुई है, तो आपको इसे केवल साइड-इफेक्ट प्रयोजनों के लिए नहीं करना चाहिए )।
तो ऐसा करने का उचित तरीका सिर्फ अगर-ब्लॉक के साथ होगा:
if (jXPanel6.isVisible()) {
jXPanel6.setVisible(true);
}
else {
jXPanel6.setVisible(false);
}
कौन से कोर्स को छोटा किया जा सकता है
jXPanel6.setVisible(jXPanel6.isVisible());
वे दोनों बाद के भाव हैं, मेरे लिए, अधिक पठनीय है कि वे अधिक स्पष्ट रूप से संवाद करते हैं कि आप क्या करने की कोशिश कर रहे हैं। (और वैसे, क्या आपने अपनी शर्तों को गलत तरीके से गोल कर लिया? ऐसा लग रहा है कि यह एक टॉगल के बजाय वैसे भी एक नो-ऑप है)।
पठनीयता के साथ कम वर्ण गणना मत मिलाओ । सबसे महत्वपूर्ण बात यह है कि सबसे आसानी से समझा जाता है; और हल्के से भाषा की सुविधाओं का दुरुपयोग पाठकों को भ्रमित करने के लिए एक निश्चित तरीका है, या कम से कम उन्हें मानसिक रूप से दोहरा लेने का काम करता है।