java switch case statement with programming examples
Μάθετε για το Java Switch Statement, Nested Switch, άλλες παραλλαγές και χρήση με τη βοήθεια απλών παραδειγμάτων:
Σε αυτό το σεμινάριο, θα συζητήσουμε τη δήλωση Java Switch. Εδώ, θα διερευνήσουμε κάθε έννοια που σχετίζεται με τη δήλωση Switch μαζί με τα παραδείγματα προγραμματισμού και την περιγραφή τους.
Θα σας δοθούν αρκετά παραδείγματα που θα σας επιτρέψουν να κατανοήσετε καλύτερα το θέμα και θα σας επιτρέψει επίσης να δημιουργήσετε τα προγράμματά σας όποτε απαιτείται να χρησιμοποιήσετε τη δήλωση εναλλαγής.
Μερικές από τις συχνές ερωτήσεις περιλαμβάνονται ώστε να γνωρίζετε τις τάσεις που τίθενται σχετικά με τη δήλωση Switch.
=> Ρίξτε μια ματιά στον οδηγό για αρχάριους Java εδώ.
Τι θα μάθετε:
οι καλύτεροι ιστότοποι για παρακολούθηση του anime
Δήλωση διακόπτη Java
Σε αυτό το σεμινάριο, θα καλύψουμε τις ακόλουθες παραλλαγές της δήλωσης Java Switch.
- Αλλαγή δήλωσης
- Δήλωση ένθετου διακόπτη (Εσωτερικός και εξωτερικός διακόπτης)
Η δήλωση Switch στην Java είναι μια δήλωση κλάδου ή μια δήλωση λήψης αποφάσεων που παρέχει έναν τρόπο εκτέλεσης του κώδικα σας σε διαφορετικές περιπτώσεις ή τμήματα που βασίζονται στην αξία της έκφρασης ή της συνθήκης. Τις περισσότερες φορές, η δήλωση Java Switch παρέχει μια καλύτερη εναλλακτική λύση από τις διάφορες διαθέσιμες επιλογές με τις δηλώσεις Java if-else.
Σύνταξη:
switch (expression){ case 1: //statement of case 1 break; case 2: //statement of case 2 break; case 3: //statement of case 3 break; . . . case N: //statement of case N break; default; //default statement }
Κανόνες για μια δήλωση διακόπτη
Παρακάτω δίνονται οι σημαντικοί κανόνες για μια δήλωση Switch.
- Δεν επιτρέπονται διπλές περιπτώσεις ή τιμές υποθέσεων.
- Η τιμή της θήκης Switch πρέπει να είναι του ίδιου τύπου δεδομένων με τη μεταβλητή περίπτωσης Switch. Για Π.χ. - εάν το «x» είναι ακέραιου τύπου σε «διακόπτη (x)», τότε όλες οι περιπτώσεις Switch πρέπει να είναι ακέραιου τύπου.
- ο Δηλώσεις διακοπής Java μπορεί να χρησιμοποιηθεί (προαιρετικό) για τον τερματισμό της ακολουθίας εκτελέσιμων σε μια υπόθεση.
- Η προεπιλεγμένη δήλωση είναι επίσης προαιρετική. Συνήθως, υπάρχει στο τέλος μιας δήλωσης Switch. Η προεπιλεγμένη δήλωση εκτελείται εάν καμία από τις περιπτώσεις Switch δεν ταιριάζει με την τιμή της μεταβλητής Switch.
- Η τιμή μιας θήκης διακόπτη πρέπει να είναι σταθερή και όχι μεταβλητή.
Εναλλαγή θήκης με χρήση για βρόχο
Παρακάτω δίνεται το παράδειγμα προγράμματος όπου έχουμε δείξει πώς λειτουργεί η δήλωση Java Switch ή μπορεί να χρησιμοποιηθεί στα προγράμματα. Πρώτα απ 'όλα, έχουμε αρχικοποιήσει την τιμή του «i» για βρόχο και καθορίσαμε την κατάσταση.
Στη συνέχεια, εφαρμόσαμε τη δήλωση Switch με δύο περιπτώσεις και μία προεπιλογή. Η προεπιλεγμένη δήλωση θα συνεχίσει να εκτελείται μέχρι το «i<5”. In this case, it will execute 2 times for “i=3” and “i=4”.
public class example { public static void main(String() args) { /* * Switch statement starts here. Added three cases and * one default statement. The default statement will * keep on executing until i<5. In this case, it will * execute 2 times for i=3 and i=4. */ for(int i=0; i<5; i++) { switch(i){ case 0: System.out.println('i value is 0'); break; case 1: System.out.println('i value is 1'); break; case 2: System.out.println('i value is 2'); break; default: System.out.println('i value is greater than 2 and less than 5'); } } } }
Παραγωγή:
Το διάλειμμα είναι προαιρετικό
Στην περίπτωση Java Switch, η δήλωση διακοπής είναι προαιρετική. Ακόμα κι αν αφαιρέσετε το διάλειμμα, ο έλεγχος του προγράμματος θα περάσει στην επόμενη περίπτωση.
Ας εξετάσουμε το ακόλουθο παράδειγμα.
public class example { public static void main(String() args) { /* * Switch statement starts here. Added 10 cases and * one default statement. Execution will flow through * each of these cases case 0 to case 4 and case 5 to * case 9 until it finds a break statement. */ for(int i=0; i<=10; i++) { switch(i){ case 0: case 1: case 2: case 3: case 4: System.out.println('i value is less than 5'); break; case 5: case 6: case 7: case 8: case 9: System.out.println('i value is less than 10'); break; default: System.out.println('Default statement'); } } } }
Παραγωγή
Δήλωση ένθετου διακόπτη
Αυτό περιλαμβάνει την έννοια ενός εσωτερικού και εξωτερικού διακόπτη. Μπορούμε να χρησιμοποιήσουμε έναν εσωτερικό διακόπτη ως μέρος της δήλωσης ενός εξωτερικού διακόπτη. Αυτός ο τύπος δήλωσης Switch ονομάζεται δήλωση Nested Switch ή διακόπτης (Inner) μέσα σε διακόπτη (Outer) είναι γνωστός ως Nested Switch.
Σύνταξη:
switch (count){ case 1: switch (target){ //nested switch statement case 0: System.out.println(“target is 0”); break; case 1: System.out.println(“target is 1”); break; } break; case 2: //… }
Εύρεση «a» και «b» με χρήση ένθετου διακόπτη
Στο παρακάτω παράδειγμα, χρησιμοποιήσαμε την κλάση σαρωτή για την εισαγωγή «a» και «b» μέσω της κονσόλας. Στη συνέχεια, χρησιμοποιήσαμε τον εσωτερικό και εξωτερικό διακόπτη για να καθορίσουμε διαφορετικές θήκες για την τιμή τόσο του «a» όσο και του «b».
Το στοιχείο ελέγχου θα περάσει από αυτές τις εσωτερικές και εξωτερικές δηλώσεις διακόπτη και εάν η τιμή που έχει εισαχθεί αντιστοιχεί, τότε θα εκτυπώσει την τιμή. Διαφορετικά, θα εκτυπωθεί η προεπιλεγμένη δήλωση.
import java.util.Scanner; public class example { public static void main(String() args) { int a,b; System.out.println('Enter a and b'); Scanner in = new Scanner(System.in); a = in.nextInt(); b = in.nextInt(); // Outer Switch starts here switch (a) { // If a = 1 case 1: // Inner Switch starts here switch (b) { // for condition b = 1 case 1: System.out.println('b is 1'); break; // for condition b = 2 case 2: System.out.println('b is 2'); break; // for condition b = 3 case 3: System.out.println('b is 3'); break; } break; // for condition a = 2 case 2: System.out.println('a is 2'); break; // for condition a == 3 case 3: System.out.println('a is 3'); break; default: System.out.println('default statement here'); break; } } }
Παραγωγή
Εναλλαγή δήλωσης χρησιμοποιώντας συμβολοσειρά
Στο JDK 7.0 και παραπάνω, επιτρέπεται η χρήση αντικειμένων συμβολοσειράς στην εναλλαγή έκφρασης ή συνθήκη.
Παρακάτω δίνεται το παράδειγμα όπου χρησιμοποιήσαμε συμβολοσειρές στη δήλωση Switch. Μπορούμε να χρησιμοποιήσουμε τις συμβολοσειρές σε μια δήλωση Switch όπως οι ακέραιοι.
import java.util.Scanner; public class example { public static void main(String() args) { String mobile = 'iPhone'; switch (mobile) { case 'samsung': System.out.println('Buy a Samsung phone'); break; case 'iPhone': System.out.println('Buy an iPhone'); break; case 'Motorola': System.out.println('Buy a Motorola phone'); } } }
Παραγωγή
Περιτύλιγμα σε μια δήλωση διακόπτη
JDK 7.0 και μετά, η δήλωση Switch λειτουργεί επίσης με την κατηγορία Wrapper. Εδώ, θα δείξουμε το Java Wrapper σε μια δήλωση Switch.
Στο παρακάτω παράδειγμα, έχουμε χρησιμοποιήσει μια κλάση Integer που τυλίγει μια τιμή του πρωτόγονου τύπου int σε ένα αντικείμενο. Χρησιμοποιώντας αυτήν την τάξη, έχουμε αρχικοποιήσει μια μεταβλητή Wrapper «x» με την τιμή 3.
Χρησιμοποιώντας τη μεταβλητή Wrapper (μέσα σε μια δήλωση διακόπτη), έχουμε ορίσει τρεις διαφορετικές περιπτώσεις μαζί με μια προεπιλεγμένη περίπτωση. Όποια περίπτωση κι αν ταιριάζει με την τιμή του «x», η συγκεκριμένη περίπτωση θα εκτελεστεί.
public class example { public static void main(String() args) { // Initializing a Wrapper variable Integer x = 3; // Switch statement with Wrapper variable x switch (x) { case 1: System.out.println('Value of x = 1'); break; case 2: System.out.println('Value of x = 2'); break; case 3: System.out.println('Value of x = 3'); break; // Default case statement default: System.out.println('Value of x is undefined'); } } }
Παραγωγή
Java Enum σε μια δήλωση διακόπτη
Στο JDK 7.0 και παραπάνω, η δήλωση Switch λειτουργεί καλά με την απαρίθμηση Java. Σε αυτήν την ενότητα, θα δείξουμε το Java enum σε μια δήλωση διακόπτη.
Εδώ, δημιουργήσαμε ένα enum που ονομάζεται παπούτσια με τέσσερις σταθερές που είναι βασικά μάρκες παπουτσιών. Στη συνέχεια, έχουμε αποθηκεύσει τον απαριθμητή στη μεταβλητή αναφοράς a1.
Χρησιμοποιώντας αυτήν τη μεταβλητή αναφοράς a1, έχουμε αρχικοποιήσει μια δήλωση Switch με τέσσερις διαφορετικές περιπτώσεις. Όποια περίπτωση αντιστοιχεί στην τιμή μεταβλητής αναφοράς, η συγκεκριμένη περίπτωση θα εκτελεστεί.
/* * created an enumeration called shoes * with four enumerators. */ enum shoes { Nike, Adidas, Puma, Reebok; } public class example { public static void main(String() args) { /* * stored enumerator in reference variable a1 for constant = Adidas */ shoes a1 = shoes.Adidas; /* * Started Switch Statement and if the element matches with a1 then it * will print the statement specified in the case */ switch (a1) { // does not match case Nike: System.out.println('Nike - Just do it'); break; // matches case Adidas: System.out.println('Adidas - Impossible is nothing'); break; // does not match case Puma: System.out.println('Puma - Forever Faster'); break; // does not match case Reebok: System.out.println('Reebok - I Am What I Am'); break; } } }
Παραγωγή
Συχνές Ερωτήσεις
Q # 1) Τι είναι μια δήλωση Java Switch;
Απάντηση: Η δήλωση Switch στη Java είναι μια δήλωση κλάδου ή μια δήλωση λήψης αποφάσεων (όπως η δήλωση Java if-else) που παρέχει έναν τρόπο εκτέλεσης του κώδικα σε διαφορετικές περιπτώσεις. Αυτές οι περιπτώσεις βασίζονται σε κάποια έκφραση ή κατάσταση.
Κυρίως, η δήλωση Java Switch έχει αποδειχθεί ότι είναι μια καλύτερη εναλλακτική λύση για τη λήψη αποφάσεων από τη δήλωση Java if-else.
Ε # 2) Πώς γράφετε μια δήλωση εναλλαγής στην Java;
Απάντηση: Δίνεται παρακάτω ένα δείγμα προγράμματος όπου χρησιμοποιήσαμε τη δήλωση Switch. Εδώ, χρησιμοποιήσαμε έναν ακέραιο αριθμό που ονομάζεται επωνυμία με την τιμή 4 και στη συνέχεια χρησιμοποιήσαμε αυτόν τον ακέραιο αριθμό σε μια δήλωση Switch για διαφορετικές περιπτώσεις.
Η ακέραια τιμή της επωνυμίας ταιριάζει με την περίπτωση και στη συνέχεια θα εκτυπωθεί η δήλωση της συγκεκριμένης θήκης.
import java.util.Scanner; public class example { public static void main(String() args) { int brand = 4; String name; // Switch statement starts here switch(brand){ case 1: name = 'Nike'; break; case 2: name = 'Dolce & Gabbana'; break; case 3: name = 'Prada'; break; case 4: name = 'Louis Vuitton'; break; default: name = 'Invalid name'; break; } System.out.println('The brand name is: ' + name); } }
Παραγωγή
Ε # 3) Δώστε ένα παράδειγμα διακόπτη δήλωσης.
Απάντηση: Υπάρχουν πολλά παραδείγματα μιας δήλωσης Switch σε αυτό το σεμινάριο. Έχουμε δώσει όλα τα πιθανά παραδείγματα, είτε το Switch with Integer είτε το Switch with String.
Μπορείτε να ανατρέξετε στα παραδείγματα που δίνονται στην αρχή αυτού του σεμιναρίου, ώστε να γνωρίζετε τα βασικά μιας δήλωσης Switch και πώς χρησιμοποιείται με τους βρόχους. (Ανατρέξτε στην ενότητα «Εναλλαγή θήκης για βρόχο»)
Q # 4) Χρειάζεστε μια προεπιλεγμένη περίπτωση σε μια δήλωση διακόπτη;
Απάντηση: Όχι, δεν είναι υποχρεωτικό να χρησιμοποιείτε την προεπιλεγμένη περίπτωση όταν ασχολείστε με τη δήλωση Switch.
Για παράδειγμα, εάν δείτε το παρακάτω παράδειγμα όπου δεν έχουμε χρησιμοποιήσει μια προεπιλεγμένη περίπτωση. Παρόλο που δεν χρησιμοποιούμε την προεπιλεγμένη περίπτωση, το πρόγραμμα θα εκτελεστεί τέλεια αρκεί να βρει την αντίστοιχη θήκη.
import java.util.Scanner; public class example { public static void main(String() args) { String author = 'Saket'; switch (author) { case 'John': System.out.println('John is the author'); break; case 'Michael': System.out.println('Michael is the author'); break; case 'Rebecca': System.out.println('Rebecca is the author'); break; case 'Saket': System.out.println('Saket is the author'); break; case 'Steve': System.out.println('Steve is the author'); break; } } }
Παραγωγή
συμπέρασμα
Σε αυτό το σεμινάριο, έχουμε συζητήσει τη δήλωση Java Switch μαζί με τη σύνταξη, την περιγραφή και το διάγραμμα ροής. Μία άλλη παραλλαγή που είναι η δήλωση Nested Switch συζητείται επίσης λεπτομερώς με τα κατάλληλα παραδείγματα συμπεριλαμβανομένης της έννοιας του εσωτερικού και του εξωτερικού διακόπτη.
Μερικές συχνές ερωτήσεις παρέχονται επίσης εδώ, ώστε να μπορείτε να γνωρίζετε τις τάσεις που σχετίζονται με τη δήλωση Java Switch. Αυτές οι δηλώσεις λήψης αποφάσεων θα είναι χρήσιμες όταν θέλετε να διαχωρίσετε τον κώδικα με βάση κάποια συνθήκη ή έκφραση και θέλετε να ελέγξετε πολλές περιπτώσεις.
=> Ελέγξτε ΟΛΑ τα Εκπαιδευτικά Java εδώ.
Συνιστώμενη ανάγνωση
- Java Float Tutorial με παραδείγματα προγραμματισμού
- Java Double - Tutorial με παραδείγματα προγραμματισμού
- Java While Loop - Εκμάθηση με παραδείγματα προγραμματισμού
- Java Reverse String: Tutorial με παραδείγματα προγραμματισμού
- Java If Statement Tutorial με παραδείγματα
- TreeSet In Java: Εκμάθηση με παραδείγματα προγραμματισμού
- HashSet In Java - Εκμάθηση με παραδείγματα προγραμματισμού
- Εκπαιδευτικό πρόγραμμα JAVA για αρχάριους: 100+ πρακτικά εκπαιδευτικά βίντεο Java