switch statement java In Hindi

switch statement java In Hindi

जावा प्रोग्रामिंग में `switch` स्टेटमेंट का यूज़ यूजर डिफाइन कस्टम प्रोग्राम एक्सप्रेशन या लॉजिक वैल्यू के आधार पर मल्टीप्ल प्रोग्राम कोड ब्लॉक में से एक समय में मल्टीप्ल कोड ब्लॉक के कई रिलेटेड ब्लॉक में से किसी एक ब्लॉक कोड स्टेटमेंट को एग्जीक्यूट करने में हेल्पफुल है। जावा प्रोग्राम में स्विच स्टेटमेंट का यूज़ सामान्य रूप से तब किया जाता है, जब प्रोग्रामर को किसी डिजायर प्रोग्राम वेरिएबल में दी गई वैल्यू के आधार पर स्पेसिफिक डिसिशन लेने की आवश्यकता होती है, जहा एक सिंगल आउटपुट के लिए कई मल्टीप्ल ब्लॉक में कई पॉसिबल आउटपुट हों सकते है।

switch statement java In Hindi

किसी भी जावा प्रोग्राम में `switch` स्टेटमेंट का यूज़ ज्यादातर `if-else-if` मल्टीप्ल प्रोग्राम लॉजिक ब्रांच स्टेटमेंट कंडीशन के एक सीरीज के अल्टरनेटिव चॉइस के रूप मे किया जाता है। जावा प्रोग्राम में स्विच स्टेटमेंट मल्टीप्ल चॉइस को डील करने से अधिक  रीडेबल और मैंटेन करना इजी हो सकता है. स्पेशली, जब जावा यूजर डिफाइन मल्टीप्ल कंडीशन इजी हों जहा सिंगल वेरिएबल वैल्यू की तुलना किसी स्थिर constant वैल्यू से की जा रही हो।

The syntax of the `switch` statement in Java.

    case expression 1:

        // here Block of program code to be executed, if the expression is equal to expression 1

        break;  // Optional choice – if you want you can, exit from switch statement

    case expression 2:

        // here Block of program code to be executed, if the given expression is equal to expression 2

        break;  // Optional choice – if you want you can, exit from the switch statement

    case expression 3:

        // here Block of program code to be executed, if the given program expression is equal to expression 3

        break;  // Optional choice – here if you want the we can exit the switch statement

    default:

        // here Block of program code to be executed, if here no above given case matches to the expression

        break;  // Optional choice – finally it exit the switch statement program logic

}

Element of switch statement.

  • expression – यह स्विच स्टेटमेंट में वह वेरिएबल या यूजर डिफाइन वैल्यू है, जिसकी तुलना स्विच ब्लॉक में की जा रही है। यहाँ यूजर डिफाइन स्विच स्टेटमेंट expression दिए गए डाटा टाइप में से कोई एक हो सकता है. जैसे, byte, short, int, char, String, या कोई enum डाटा टाइप है।
  • case value – यह स्विच स्टेटमेंट में वह वैल्यू है, जिससे expression को कम्पयेर किया जाता है। यदि यहाँ स्विच expression किसी case वैल्यू एक्सप्रेशन से मैच होता है, तो प्रोग्राम कोड का रिलेटेड ब्लॉक आटोमेटिक एग्जीक्यूट होगा।
  • break – यहाँ ब्रेक कीवर्ड `switch` स्टेटमेंट के एग्जीक्यूशन को ब्रेक करता है, जिससे यह स्विच लॉजिक को नेक्स्ट case ब्लॉक में मूव करने से बच जाता है। यदि यहाँ `break` स्टेटमेंट को अवॉयड कर दिया जाता है, तो प्रोग्राम बाद के स्विच case स्टेटमेंट को एग्जीक्यूट करना कंटिन्यू करता रहता है, जिसे जावा में fall-through कांसेप्ट के रूप में जाना जाता है।
  • default – डिफ़ॉल्ट स्विच स्टेटमेंट कोड का एक अल्टरनेटिव ब्लॉक है, जो स्विच प्रोग्राम में तब एग्जीक्यूट होता है, यदि स्विच एक्सप्रेशन में कोई भी case, expression से मैच नहीं होता है। यदि यहाँ डिफ़ॉल्ट स्टेटमेंट में कोई `default` वैल्यू प्रोवाइड नहीं की गई है, और कोई भी case वैल्यू से मैच नहीं होता है, तो यहाँ `switch` स्टेटमेंट बिना किसी ब्लॉक को एग्जीक्यूट किए अपने आप टर्मिनेट हो जाता है।

Example of `switch` statement in Java.

public class Main

{

            public static void main(String[] args) {

                        int dayofweek = 7;

        String dayvalue;

        switch (dayofweek) {

            case 1:

                dayvalue = “Monday”;

                break;

            case 2:

                dayvalue = “Tuesday”;

                break;

            case 3:

                dayvalue = “Wednesday”;

                break;

            case 4:

                dayvalue = “Thursday”;

                break;

            case 5:

                dayvalue = “Friday”;

                break;

            case 6:

                dayvalue = “Saturday”;

                break;

            case 7:

                dayvalue = “Sunday”;

                break;

            default:

                dayvalue = “Wrong day selection”;

                break;

        }

        System.out.println(“Day of today is – ” + dayvalue);

    }

}

Detailed explanation of the switch.

यहाँ स्विच एक्साम्प्ल में, यूजर डिफाइन वेरिएबल dayvalue को प्रत्येक case से कम्पयेर किया जाता है। जैसा की यहाँ dayvalue की वैल्यू 7 डिफाइन है, इस वजह से यह program case 7 से एक्जैक्ट match करता है, और dayvalue = “Sunday”; ब्लॉक स्टेटमेंट को execute करता है। इसके बाद, ब्रेक स्टेटमेंट प्रोग्राम से एग्जिट हो जाता है.

Example of a switch with the String data type.

जावा डेवलपर प्रोग्राम में String डाटा टाइप के साथ भी switch statement को यूज़ कर सकते हैं।

public class Main

{

            public static void main(String[] args) {

        String programming = “Php”;

        switch (programming) {

            case “Java”:

                System.out.println(“Java programming.”);

                break;

            case “Python”:

                System.out.println(“Python programming.”);

                break;

            case “JavaScript”:

                System.out.println(“JavaScript programming.”);

                break;

            case “Php”:

                System.out.println(“Php programming.”);

                break;

            default:

                System.out.println(“No choice available.”);

                break;

        }

    }

}

Explanation of the switch with the String data type.

यहाँ इस प्रोग्राम में वेरिएबल programming को case में मौजूद हर String वैल्यू से कम्पयेर किया जाता है। जैसा की, यहाँ programming वेरिएबल की वैल्यू “Php” है, इस वजह से यह program case “Php” से प्रॉपर match करता है, और System.out.println(“Php programming.”); आउटपुट स्टेटमेंट को एक्सेक्यूट करता है।

Example of fall-through behavior in a Java program.

किसी जावा प्रोग्राम में, यदि यूजर `break` स्टेटमेंट कीवर्ड को यूज़ नहीं करते हैं, तो मौजूदा प्रोग्राम “फ़ॉल-थ्रू” को कंटिन्यू रन करेगा और इसके बाद के `case` स्टेटमेंट को वन बाय वन रन करना कंटिन्यू करेगा, चाहे वे प्रोग्राम वेरिएबल कंडीशन से  मैच हो या ना हो।

public class SwitchFallThroughExample {

public class Main

{

            public static void main(String[] args) {

        int test = 3;

        switch (test) {

            case 1:

                System.out.println(“Test 1”);

            case 2:

                System.out.println(“Test 2”);

            case 3:

                System.out.println(“Test 3”);

            case 4:

                System.out.println(“Test 4”);

            case 5:

                System.out.println(“Test 5”);

            default:

                System.out.println(“Wrong test selection”);

        }

    }

}

Explanation of fall-through behavior.

यहाँ इस प्रोग्राम में, क्योंकि `break` स्टेटमेंट का यूज़ नहीं किया गया है, जब यहाँ `case 3` एक्सप्रेशन से मैच होता है, तो यह बाद के `case` स्टेटमेंट ब्लॉक पर फ़ॉल-थ्रू करेगा और उन सभी स्टेटमेंट को एक साथ रन कर देगा। इस तरह के स्विच स्टेटमेंट को फ़ॉल-थ्रू बिहैवियर कहा जाता है।

जावा प्रोग्रामर प्रोग्राम में अनचाहे फ़ॉल-थ्रू बिहेवियर को अवॉयड करने के लिए, जावा यूजर फ़ॉल-थ्रू फ्लो कण्ट्रोल को स्टॉप करने के लिए प्रत्येक `case` ब्लॉक के बाद `break` स्टेटमेंट को ऐड कर सकते हैं।

Java `default` statement usage example.

जावा स्विच स्टेटमेंट प्रोग्राम में `default` `case` का यूज़ तब किया जाता है, जब यूजर डिफाइन कोई भी `case` एक्सप्रेशन वैल्यू से मैच नहीं होता है। तो यह अंत में `switch` स्टेटमेंट का एक अल्टरनेटिव सलेक्शन चॉइस है, कई बार स्विच स्टेटमेंट में अप्रत्याशित वैल्यू को डील करने के लिए डिफ़ॉल्ट चॉइस स्टेटमेंट का यूज़ होता है।

public class Main

{

            public static void main(String[] args) {

        int laptop = 14;

        switch (laptop) {

            case 1:

                System.out.println(“Macbook Pro”);

                break;

            case 2:

                System.out.println(“HP”);

                break;

            case 3:

                System.out.println(“Dell”);

                break;

            case 4:

                System.out.println(“Lenovo”);

                break;

            case 5:

                System.out.println(“Asus”);

                break;

            case 6:

                System.out.println(“Acer”);

                break;

            case 7:

                System.out.println(“Samsung”);

                break;

            case 8:

                System.out.println(“Gigabyte”);

                break;

            case 9:

                System.out.println(“Msi”);

                break;

            case 10:

                System.out.println(“Android”);

                break;

            case 11:

                System.out.println(“Microsoft”);

                break;

            case 12:

                System.out.println(“Alienware”);

                break;

            case 13:

                System.out.println(“Skytech”);

                break;

            default:

                System.out.println(“Wrong laptop selection”);

                break;

        }

    }

}

Java `default` statement

यहाँ स्विच वेरिएबल laptop का वैल्यू 14 है, जो मौजूदा प्रोग्राम में किसी भी case वैल्यू  से मैच नहीं होता है। इस वजह से, प्रोग्राम डायरेक्ट default ब्लॉक पर मूव हो जाता है, और System.out.println(“Wrong laptop selection”); स्टेटमेंट को प्रिंट करता है।

Limitations of the Java switch statement.

  • Limited to certain types – जावा प्रोग्रामिंग में switch एक्सप्रेशन स्टेटमेंट केवल कुछ पर्टिकुलर डेटा टाइप्स को ही सपोर्ट करता है, जैसे byte, short, int, char, String, और enum आदि डाटा टाइप है। जावा प्रोग्राम में स्विच स्टेटमेंट का यूज़ float डाटा टाइप float या double या काम्प्लेक्स प्रोग्राम कंडीशन जैसे रेंज के साथ नहीं हो सकता है।
  • No range checking – switch स्टेटमेंट किसी प्रोग्राम में केवल एक्जैक्ट मैच को एनालाइज करता है, इस कारण अतिरिक्त लॉजिक का उपयोग किए बिना इसका उपयोग “स्टार्ट पॉइंट से एंड पॉइंट के बीच” जैसी मल्टीप्ल कंडीशन के लिए नहीं किया जा सकता है।
  • No multiple conditions per case – switch स्टेटमेंट को प्रोग्राम में प्रत्येक case को एक दी गई स्पेसिफिक वैल्यू से मैच होना चाहिए। यूजर स्विच स्टेटमेंट में डायरेक्ट मल्टीप्ल कंडीशन वाला कोई case नहीं रख सकते है।

Use switch vs. if-else-if in Java.

Use switch in Java when.

  • जावा यूजर प्रोग्राम में किसी एक वेरिएबल variable या एक्सप्रेशन की तुलना कई स्थिर कांस्टेंट वैल्यूज constant values से कर रहे हों।
  • जहा मौजूदा प्रोग्राम में वैल्यू integer डाटा टाइप है, जैसे, char, String, या enum डाटा टाइप हों।
  • जब जावा प्रोग्रामर प्रोग्राम सोर्स कोड रीडेबिलिटी और प्रोग्राम स्ट्रक्चर में इम्प्रोवेंमेंट करना चाहते हों।

Use if-else-if in Java when.

  • जब जावा प्रोग्राम में यूजर को मोर काम्प्लेक्स प्रोग्राम कंडीशंस या रेंज को टेस्ट करने की जरूरत हो. जैसे की, यदि कोई डाटा टाइप वैल्यू 1 और 10 के बीच है।
  • जब जावा प्रोग्रामर को प्रोग्राम में मल्टीप्ल प्रोग्राम एक्सप्रेशन्स को एवोलुट करने या लॉजिकल कंडीशन ऑपरेशन परफॉर्म  करने की जरूरत हो।

Detail explanation of switch statement.

Aspect behaviourSwitch statementif-else-if block statement
Support Expression TypesIt supports int, char, String, enum, data type etc.It supports Any boolean condition or complex expression given by user.
ReadabilitySwitch statement Easier to read for many constant comparisons define by user in multiple blockIn if else block statement Can become complex with many conditions to deal all at a same time
Where to Use CaseSwitch case statement helpful When you need to check a single variable for multiple given constant valuesIf else statement capable to handling more complex conditions or ranges given by user
Fall-Through conceptSwitch case statement support fall through concept if break is omitted in each blockIf else statement No fall-through behaviour support, each if else condition is checked independently by its block statement

Leave a Reply