Mehrere verschachtelte Schleifen mit Break verlassen
Während das Verschachteln mehrerer „for“-Schleifen ein gängiger Ansatz zum Durchlaufen von Datenstrukturen ist, werden alle vorzeitig beendet Die Schleifen können manchmal notwendig sein. Können wir die Funktion „Pause“ für diesen Zweck nutzen?
Die Einschränkungen von „Pause“
Leider funktioniert die Funktion „Pause“ im Rahmen ihrer unmittelbaren Wirkung Schleife. Die Anwendung, um aus mehreren verschachtelten Schleifen auszubrechen, ist nicht effektiv. Der Versuch, dies zu tun, beendet einfach die aktuelle Schleife und lässt die verschachtelten Schleifen unberührt.
Der Fall für „goto“
Ironischerweise wird oft die bewährte „goto“-Anweisung verwendet in modernen Programmierpraktiken verpönt ist, erweist sich für dieses spezielle Szenario als die geeignete Lösung. Im Gegensatz zu „break“ ermöglicht „goto“ das Springen zwischen Codeblöcken unabhängig von ihrer Verschachtelungsebene.
Steuerung der Schleifenaustrittstiefe
Steuerung der Anzahl der Schleifen, die mit beendet werden „goto“ beinhaltet die Beschriftung der Schleifen und die Angabe der entsprechenden Beschriftung als „goto“-Ziel. Um beispielsweise zwei verschachtelte Schleifen zu verlassen:
outer_loop: for (initialization1; condition1; increment1) { inner_loop: for (initialization2; condition2; increment2) { // Exit both loops if (condition) { goto outer_loop; } } }
Durch einen Sprung zu der mit der äußersten Schleife verknüpften Beschriftung werden beide verschachtelten Schleifen sofort beendet.
Daher ist „break“ ungeeignet für Beim Verlassen mehrerer verschachtelter Schleifen stellt „goto“ die erforderliche Funktionalität bereit, wenn auch mit einer weniger eleganten Syntax.
Das obige ist der detaillierte Inhalt vonKann „goto' dabei helfen, mehrere verschachtelte Schleifen zu beenden, wenn „break' fehlschlägt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!