Υποχρεωτικές δηλώσεις σε πρόγραμμα υπολογιστή αποφάσεις στήριξης με βάση μια συγκεκριμένη κατάσταση. Εάν πληρούται η συνθήκη ή "αληθής", εκτελείται ένα συγκεκριμένο κομμάτι κώδικα.
Για παράδειγμα, θέλετε να μετατρέψετε το κείμενο που εισάγεται από χρήστη σε πεζά. Εκτελέστε τον κώδικα μόνο εάν ο χρήστης εισάγει κείμενο με κεφαλαία γράμματα. Αν όχι, δεν θέλετε να εκτελέσετε τον κώδικα, διότι θα οδηγήσει σε σφάλμα χρόνου εκτέλεσης.
Υπάρχουν δύο βασικές δηλώσεις υπό όρους που χρησιμοποιούνται στη Java: τα if-then και if-then-else δηλώσεις και τη μεταβίβαση.
Οι δηλώσεις If-Then και If-Then-Else
Η πιο βασική εντολή ελέγχου ροής στην Java είναι if-then: αν [κάτι] είναι αληθινό, κάνουμε [κάτι]. Αυτή η δήλωση είναι μια καλή επιλογή για απλές αποφάσεις. Η βασική δομή μιας εντολής if ξεκινά με τη λέξη "if", ακολουθούμενη από την πρόταση για δοκιμή, ακολουθούμενη από σγουράκια που τυλίγουν την ενέργεια για να ληφθούν αν η πρόταση είναι αληθής. Μοιάζει με αυτό:
αν (δήλωση) {// κάντε κάτι εδώ ...}
Αυτή η δήλωση μπορεί επίσης να επεκταθεί για να κάνει κάτι άλλο ο όρος είναι ψευδής:
αν (δήλωση) {// κάντε κάτι εδώ ...}
αλλιώς {// κάντε κάτι άλλο ...}
Για παράδειγμα, αν καθορίζετε αν κάποιος είναι αρκετά μεγάλος για να οδηγήσει, ίσως έχετε μια δήλωση που λέει ότι "εάν η ηλικία σας είναι 16 ετών ή μεγαλύτερη, μπορείτε να οδηγήσετε. αλλιώς, δεν μπορείτε να οδηγήσετε. "
int age = 17;
αν ηλικία> = 16 {System.out.println ("Μπορείτε να οδηγήσετε.")?}
αλλιώς {System.out.println ("Δεν είστε αρκετά μεγάλοι για να οδηγείτε.")
Δεν υπάρχει όριο στον αριθμό των άλλων δηλώσεων που μπορείτε να προσθέσετε.
Υποχρεωτικοί χειριστές
Στο παραπάνω παράδειγμα, χρησιμοποιήσαμε έναν μόνο χειριστή. Αυτοί είναι οι βασικοί χειριστές που μπορείτε να χρησιμοποιήσετε:
- ίσο με:
- λιγότερο από: <
- περισσότερα από:>
- μεγαλύτερο ή ίσο με:> =
- μικρότερη ή ίση με:> =
Εκτός από αυτά, υπάρχουν και άλλα τέσσερα οι φορείς εκμετάλλευσης που χρησιμοποιούν υπό όρους δηλώσεις:
- και: &&
- δεν:!
- ή: ||
- είναι ίσο με: ==
Για παράδειγμα, η ηλικία οδήγησης θεωρείται ότι είναι από την ηλικία 16 έως την ηλικία των 85 ετών, οπότε μπορεί να χρησιμοποιηθεί ο χειριστής AND.
αλλού εάν (ηλικία> 16 ετών και άνω <85 ετών)
Αυτό θα είναι αληθές μόνο αν πληρούνται και οι δύο προϋποθέσεις. Οι χειριστές NOT, OR, and IS EQUAL TO μπορούν να χρησιμοποιηθούν με παρόμοιο τρόπο.
Η δήλωση διακόπτη
ο αποστασιοποίηση παρέχει έναν αποτελεσματικό τρόπο αντιμετώπισης ενός τμήματος κώδικα ο οποίος θα μπορούσε να διακλαδιστεί σε πολλαπλές κατευθύνσεις βασισμένος σε μια μονή μεταβλητή. Δεν υποστηρίζει τους υποκινητές υπό όρους που εκτελεί η εντολή if-then, ούτε μπορεί να χειριστεί πολλές μεταβλητές. Είναι, ωστόσο, μια προτιμότερη επιλογή όταν η συνθήκη πληρούται από μία μόνο μεταβλητή επειδή μπορεί να βελτιώσει την απόδοση και είναι ευκολότερη στη συντήρησή της.
Ακολουθεί ένα παράδειγμα:
διακόπτης (single_variable) {τιμή του θέματος: // code_here;
Διακοπή;
τιμή κειμένου: // code_here;
Διακοπή;
προεπιλογή: // ορίστε μια προεπιλογή ·}
Σημειώστε ότι ξεκινάτε με το διακόπτη, παρέχετε μια μόνο μεταβλητή και στη συνέχεια καθορίζετε τις επιλογές σας χρησιμοποιώντας τον όρο υπόθεση. Η λέξη-κλειδί Διακοπή ολοκληρώνει κάθε περίπτωση της δήλωσης διακόπτη. Η προεπιλεγμένη τιμή είναι προαιρετική αλλά καλή πρακτική.
Για παράδειγμα, αυτός ο διακόπτης εκτυπώνει το στίχο του τραγουδιού Δώδεκα Ημέρες των Χριστουγέννων που δόθηκε μια δεδομένη ημέρα.
int ημέρα = 5;
Στίχος λυρικό = ""; // κενή συμβολοσειρά για να κρατήσετε το λυρικό
διακόπτης (ημέρα) {περίπτωση 1:
λυρικό = "Μια πέρδικα σε αχλαδιά".
Διακοπή;
περίπτωση 2:
λυρικά = "2 περιστέρια χελώνα"?
Διακοπή;
περίπτωση 3:
λυρικά = "3 γαλλικές κότες";
Διακοπή;
περίπτωση 4:
λυρικά = "4 που καλούν πτηνά"?
Διακοπή;
περίπτωση 5:
λυρικά = "5 χρυσά δαχτυλίδια"?
Διακοπή;
περίπτωση 6:
λυρικό = "6 χήνες-α-επένδυση"?
Διακοπή;
περίπτωση 7:
λυρικά = "7 κύκνοι-μια-κολύμβηση"?
Διακοπή;
περίπτωση 8:
λυρικό = "8 κατσίκες-α-άρμεγμα"?
Διακοπή;
περίπτωση 9:
λυρικά = "9 κυρίες χορεύουν"?
Διακοπή;
περίπτωση 10:
λυρικό = "10 Lords-a-άλμα"?
Διακοπή;
περίπτωση 11:
lyric = "11 σωληνώσεις pipers"?
Διακοπή;
περίπτωση 12:
λυρικά = "12 τύμπανα τύμπανα";
Διακοπή;
Προκαθορισμένο:
lyric = "Υπάρχουν μόνο 12 ημέρες.";
Διακοπή;
}
System.out.println (λυρικό);
Σε αυτό το παράδειγμα, η τιμή για δοκιμή είναι ένας ακέραιος αριθμός. Το Java SE 7 και αργότερα υποστηρίζει ένα αντικείμενο συμβολοσειράς στην έκφραση. Για παράδειγμα:
Ημέρα χορδών = "δεύτερη";
Στίχος λυρικό = ""; // κενή συμβολοσειρά για να κρατήσετε το λυρικό
διακόπτης (ημέρα) {
περίπτωση "πρώτη":
λυρικό = "Μια πέρδικα σε αχλαδιά".
Διακοπή;
περίπτωση "δεύτερη":
λυρικά = "2 περιστέρια χελώνα"?
Διακοπή;
περίπτωση "τρίτο":
λυρικά = "3 γαλλικές κότες";
Διακοπή;
// και τα λοιπά.