java:control_flow

This is an old revision of the document!


Έλεγχος ροής προγράμματος

Αναφορικά με τον έλεγχο ροής προγράμματος μπορείτε (for,while,do-while,if,switch κλπ) να ανατρέξετε στο documentation της Oracle εδώ.

if - else if - else statement

Ανάλογά με την γλώσσα C. Δείτε το παρακάτω παράδειγμα.

IfElseDemo.java
class IfElseDemo {
    public static void main(String[] args) {
 
        int testscore = 76;
        char grade;
 
        if (testscore >= 90) {
            grade = 'A';
        } else if (testscore >= 80) {
            grade = 'B';
        } else if (testscore >= 70) {
            grade = 'C';
        } else if (testscore >= 60) {
            grade = 'D';
        } else {
            grade = 'F';
        }
        System.out.println("Grade = " + grade);
    }
}

Switch statement

Σε αναλογία με την γλώσσα C, η Java υποστηρίζει την εντολή switch. Η ιδιαιτερότητα της switch στην Java είναι ότι υποστηρίζει ακεραίους, enumerated types ή αλφαριθμητικά. Δείτε τα παρακάτω παραδείγματα με χρήση ακεραίων και αλφαριμθητικών.

SwitchDemo.java
public class SwitchDemo {
    public static void main(String[] args) {
 
        int month = 8;
        String monthString;
        switch (month) {
            case 1:  monthString = "January";
                     break;
            case 2:  monthString = "February";
                     break;
            case 3:  monthString = "March";
                     break;
            case 4:  monthString = "April";
                     break;
            case 5:  monthString = "May";
                     break;
            case 6:  monthString = "June";
                     break;
            case 7:  monthString = "July";
                     break;
            case 8:  monthString = "August";
                     break;
            case 9:  monthString = "September";
                     break;
            case 10: monthString = "October";
                     break;
            case 11: monthString = "November";
                     break;
            case 12: monthString = "December";
                     break;
            default: monthString = "Invalid month";
                     break;
        }
        System.out.println(monthString);
    }
}
StringSwitchDemo.java
public class StringSwitchDemo {
 
    public static int getMonthNumber(String month) {
 
        int monthNumber = 0;
 
        if (month == null) {
            return monthNumber;
        }
 
        switch (month.toLowerCase()) {
            case "january":
                monthNumber = 1;
                break;
            case "february":
                monthNumber = 2;
                break;
            case "march":
                monthNumber = 3;
                break;
            case "april":
                monthNumber = 4;
                break;
            case "may":
                monthNumber = 5;
                break;
            case "june":
                monthNumber = 6;
                break;
            case "july":
                monthNumber = 7;
                break;
            case "august":
                monthNumber = 8;
                break;
            case "september":
                monthNumber = 9;
                break;
            case "october":
                monthNumber = 10;
                break;
            case "november":
                monthNumber = 11;
                break;
            case "december":
                monthNumber = 12;
                break;
            default: 
                monthNumber = 0;
                break;
        }
 
        return monthNumber;
    }
 
    public static void main(String[] args) {
 
        String month = "August";
 
        int returnedMonthNumber =
            StringSwitchDemo.getMonthNumber(month);
 
        if (returnedMonthNumber == 0) {
            System.out.println("Invalid month");
        } else {
            System.out.println(returnedMonthNumber);
        }
    }
}

While και do-while statements

WhileDemo.java
class WhileDemo {
    public static void main(String[] args){
        int count = 1;
        while (count < 11) {
            System.out.println("Count is: " + count);
            count++;
        }
    }
}
DoWhileDemo.java
class DoWhileDemo {
    public static void main(String[] args){
        int count = 1;
        do {
            System.out.println("Count is: " + count);
            count++;
        } while (count < 11);
    }
}

for statement

Η εντολή for συντάσσεται όπως και στην γλώσσα προγραμματισμού C. Ενδιαφέρον έχει μία διαφοροποιημένη έκδοση της for που υποστηρίζει η java και παρουσιάζουμε εδώ με σκοπό την ανακύκλωση σε όλα τα μέλη ενός πίνακα ή ενός Collection (όπως θα δούμε αργότερα). Δείτε το παρακάτω παράδειγμα.

EnhancedForDemo.java
class EnhancedForDemo {
    public static void main(String[] args){
         int[] numbers = 
             {1,2,3,4,5,6,7,8,9,10};
         for (int item : numbers) {
             System.out.println("Count is: " + item);
         }
    }
}
java/control_flow.1423457854.txt.gz · Last modified: 2016/02/26 11:15 (external edit)