Der Unterschied zwischen den Schlüsselwörtern Return, Continue und Break

Vorwort:       

        Viele Menschen sind sich möglicherweise nicht sicher, welche Rolle diese drei Schlüsselwörter bei der Verwendung in einer Schleife spielen, und das ist auch bei mir der Fall. Also habe ich die Daten gesammelt und selbst geübt und bin zu den folgenden Schlussfolgerungen gekommen! Besprechen Sie ihre Unterschiede.

Text:

        1. Rückkehr : Springen Sie direkt aus der aktuellen Methode, kehren Sie zur Methodenanweisung des Aufrufs zurück und fahren Sie mit der Ausführung fort.

        2.Weiter : Beenden Sie diesen Zyklus und fahren Sie direkt mit dem nächsten Zyklus fort.

        3. Pause : Beenden Sie den gesamten Zirkulationsprozess im Zirkulationskörper.

üben:

        Derselbe Punkt: Es gibt eine for-Schleife in der Methode, und die Konsole gibt jedes Mal das Ergebnis aus. Nach dem Ende der Schleife wird das Ergebnis im Methodenkörper gedruckt und die Methode kehrt nach der Ausführung der Methode zur Hauptfunktion zurück und gibt das Ergebnis aus.

        Der Unterschied: Schreiben Sie eine bedingte Beurteilung in die for-Schleife. Wenn beispielsweise i = 3 ist, sehen Sie sich die Druckergebnisse der drei Schlüsselwörter an

        Wirkung: Vergleichen Sie die Ergebnisse und analysieren Sie den Unterschied

prüfen:

(1) Testfunktion

/**
 * @author qingnianren
 * @context return、continue、break关键字区别
 */
public class KeywordDifference {

    public static void main(String[] args) {
        testReturn();
        testContinue();
        testBreak();

        System.out.println("======main 主函数======");
    }

    /**
     * return测试方法
     */
    private static void testReturn() {
        for (int i = 0; i < 5; i++) {

            if (i == 3) {
                return;
            }
            System.out.println("---return--------" + i);
        }
        System.out.println("===return====for循环体外");
    }

    /**
     * continue测试方法
     */
    private static void testContinue() {
        for (int i = 0; i < 5; i++) {

            if (i == 3) {
                continue;
            }
            System.out.println("---continue--------" + i);
        }
        System.out.println("===continue====for循环体外");
    }

    /**
     * break测试方法
     */
    private static void testBreak() {
        for (int i = 0; i < 5; i++) {

            if (i == 3) {
                break;
            }
            System.out.println("---break--------" + i);
        }
        System.out.println("===break====for循环体外");
    }
}

(2) Ausgabeergebnis

Schlüsselwort zurückgeben

---return--------0
---return--------1
---return--------2
======main Hauptfunktion== ====

Stichwort fortsetzen

---weiter--------0
---weiter--------1
---weiter--------2
---weiter------- -4
===continue====for-Schleife außerhalb des Körpers
======main Hauptfunktion ======

Schlüsselwort unterbrechen

---break--------0
---break--------1
---break--------2
===break====for Schleife außerhalb der Körper
======Haupthauptfunktion======

abschließend:

        return: Wenn i == 3 ist, wird nach der Ausführung von return nicht nur die Schleife, sondern auch die Methode beendet und direkt zur Hauptfunktion zurückgekehrt. Die Funktion von return besteht also darin, den Aufruf der Methode zu beenden       

        continue: Wenn i == 3, wird nach der Ausführung von continue der nächste ---continue-------3 nicht gedruckt, aber der nächste Zyklus ---continue-------4 wird immer noch gedruckt. also continue beendet nur diese Schleife 

        break: Wenn i == 3, gehen Sie nach der Ausführung von break direkt aus der for-Schleife heraus und drucken Sie ===break==== außerhalb der for-Schleife, sodass die Funktion von break darin besteht, die Schleife zu beenden

Ankerpunkt:    

/**
 * @author qingnianren
 * @context out参数
 */
public class BreakOut {

    public User setUserName(String str) {
        User user = new User();
        user.setName("unknown");
        out:
        {
            if (str.equals("kyrie")) {
                user.setName("irving");
                break out;
            }
            if (str.equals("kevin")) {
                user.setName("durant");
                break out;
            }
        }
        return user;
    }
}

Guess you like

Origin blog.csdn.net/m0_60252632/article/details/125866473