‫In Ordnung, jetzt, da Sie wissen, wie man eine Rasse verwendet und sich sowie für jede Truppen kleidet, kombinieren wir diese. Lassen
‫Sie uns die Konzepte in einem Video und einem Beispiel kombinieren.
‫Schauen wir uns aber auch verschachtelte Foren an.
‫In diesem Video werden wir diese verschiedenen Funktionen durchgehen und dann sehen, wann eine verschachtelte for-Schleife
‫verwendet werden sollte und welche Vorteile eine verschachtelte for-Schleife gegenüber einer for-jede-Schleife hat, wenn es beispielsweise
‫um mehrdimensionale geht Arrays.
‫Okay, also fangen wir an.
‫Das erste, was ich hier habe, ist, wie Sie sehen können, dass ich diese Matrix habe,
‫die ein zweidimensionales Array ist, das drei Elemente in jeder Dimension hat.
‫OK, also drei Zeilen und drei Spalten sozusagen.
‫Ich werde also die for each-Schleife verwenden, indem ich hier das for each-Schlüsselwort verwende.
‫Dieser und DTAP.
‫Und das erlaubt mir dann im Grunde einfach, sehr schnell einzugeben, um welchen Typ es sich handelt, wie
‫ich das Element der Sammlung, die ich durchlaufe, und die Sammlung nennen möchte.
‫Dies ist also ein netter kleiner Trick, wenn Sie schneller codieren möchten.
‫Das Element wird also vom Typ Integer sein, da wir diese Matrix durchlaufen möchten, die eine Reihe von
‫Ganzzahlen enthält, und das Element, dem wir folgen können Element.
‫Wir könnten es NUM nennen, weil es eine Zahl ist, die wir Element nennen könnten.
‫Dies wären normale Namen, die Sie hier sehen würden, aber das Element wird vorerst in Ordnung sein.
‫Und dann wird die Sammlung, die ich durchlaufen möchte, meine Matrix sein, die ich hier vorbereitet habe.
‫Und das ist auch der Grund, warum ich diese Matrix statisch machen musste, weil ich
‫sie innerhalb meiner statischen Hauptmethode verwende und Sie keine nicht statischen Elemente verwenden können, die Variablen innerhalb der statischen Hauptmethode oder innerhalb von
‫statischen Methoden im Allgemeinen waren.
‫OK, um dies für jede Gruppe zu durchlaufen und die Matrixelemente anzuzeigen, können wir einfach
‫die Konsole verwenden.
‫Hier die rechte Zeile.
‫Also s. W. Doppeltab und hier sage ich nur, dass ich das Element anzeigen und dann einen leeren Platz machen werde.
‫Oder erstellen Sie einen leeren Raum und verwenden wir eigentlich nicht die rote Linie, aber richtig, so wird es nur
‫in eine Zeile geschrieben und nicht ständig eine neue Zeile erstellt.
‫Lassen Sie uns das jetzt ganz schnell ausführen.
‫Und wir werden sehen, dass wir eins, zwei, drei, vier, fünf, sechs, sieben, acht, neun haben.
‫OK, alle Elemente, die wir hier in unserer Matrix haben, werden angezeigt.
‫Wir verwenden dies also für jede Schleife, um jedes einzelne Element innerhalb dieser Matrix zu durchlaufen.
‫Und es geht in unserem Beispiel hier sozusagen von links oder oben links nach unten rechts.
‫OK, also für jeweils zwei ist ein mächtiges Werkzeug.
‫Es erlaubt uns, eine Sammlung und eine 2D-Matrix durchzugehen, eine 3D-Matrix, wie viele Dimensionen Sie auch immer haben
‫möchten, all das sind am Ende nur Sammlungen, denn hier verwenden wir ein Array und ein Array ist
‫eine Art von eine Sammlung.
‫OK, und das ist es, was wir für jede Schleife zum Durchlaufen brauchen.
‫Durchlaufen Sie also unsere Sammlungsmatrix.
‫Jetzt können wir also fortfahren und dies verwenden, um Ihnen zu zeigen, wie Sie dies mit einer verschachtelten for-Schleife hätten erreichen
‫können.
‫OK, das für jede Gruppe ist also super nützlich, wenn Sie nur jedes einzelne
‫Element darin durchgehen möchten, aber es hat in bestimmten Situationen gewisse Nachteile.
‫Wenn Sie das Element jetzt ändern möchten, können Sie dies nicht tun, da es geschützt ist.
‫Sie können also nicht fortfahren und sagen, dass item jetzt beispielsweise mit drei überschrieben werden soll, wie Sie hier sehen
‫können.
‫Wenn Sie das also versuchen, heißt es, kann dem Element nicht zugewiesen werden, da es sich um eine Variable für jede Iteration handelt.
‫OK, es ist also nicht der eigentliche Artikel, es ist wirklich nur der Wertspeicher, sozusagen.
‫Also speichern wir jeden Wert, den wir gerade aus unserer Kollektion betrachten und was wir hier aufbewahren, den
‫Wert davon.
‫In der ersten Iteration ist es also eins, in der zweiten Iteration sind es zwei, aber es ist nie wirklich
‫der Wert selbst.
‫Es ist nur ein Hinweis auf den Wert.
‫Okay, das hilft uns nicht wirklich weiter.
‫Wenn wir also tatsächlich anpassen wollen, bräuchten wir so etwas wie eine verschachtelte for-Schleife.
‫OK, also hier, lass uns weitermachen und ein Nest erstellen.
‫Ich werde hier eine kleine rote Zeile hinzufügen, die besagt, dass unser Array mit einem verschachtelten Ordner gedruckt wird.
‫Was ist also ein verschachteltes Volume?
‫Nun, es ist im Grunde ein Ordner mit einer weiteren for-Schleife darin.
‫OK, hier werden wir vier verwenden und wir können wieder Doppeltippen verwenden.
‫Also gehen wir von I null auf die Länge.
‫Hier müssen wir also die Länge der Iteration eingeben.
‫Ich werde hier also meine Matrix verwenden, aber ich könnte hier natürlich die Länge verwenden und dies
‫würde mir dann die Länge der gesamten Matrix geben.
‫Im Grunde also die Anzahl der Elemente, die ich in dieser Matrix habe, aber das ist nicht das, was ich will.
‫Ich möchte jede Dimension durchgehen, also möchte ich sie Zeile für Zeile und Spalte für Spalte durchgehen.
‫Die erste Dimension sind also die Zeilen.
‫Ich kann also eine Methode verwenden, die Arrays bietet.
‫Die Array-Klasse hat also diese Methode mit großer Länge, bei der ich die Dimension analysieren muss.
‫OK, damit bekomme ich die dargestellte Zahl oder Sie können hier sehen, dass die Anzahl der Elemente in
‫der angegebenen Dimension des Arrays dargestellt wird.
‫Wenn ich also in meinem Fall eine Null eingebe, wird die Null jetzt mit einer Dimension zurückgegeben, die im Wesentlichen die
‫Zeilen bedeutet.
‫OK, das gibt mir die Zeilen.
‫Wenn ich jetzt jede einzelne Spalte durchlaufen möchte, muss ich hier eine weitere for-Schleife verwenden.
‫Das wird also mein inneres Volumen sein, wie so eine innere for-Schleife.
‫OK, und das hier draußen wird die äußere for-Schleife sein.
‫OK, also.
‫Was wir jetzt ändern müssen, ist natürlich der Name der Iterationsvariablen, also verwenden wir hier Jay
‫anstelle von I.
‫Dies ist eine gängige Praxis.
‫Wenn Sie also einen in einem Foto haben, verwenden Sie hier normalerweise Jay als Namen der Zählervariablen.
‫Aber jetzt wollen wir Jay nicht mit der Länge der ersten Dimension vergleichen, sondern der zweiten Dimension.
‫Also geben wir hier einen ein.
‫So kann ich jetzt jede einzelne Spalte durchgehen.
‫Diese Aufgabe von Falu besteht also darin, die einzelnen Spalten durchzugehen, und dies folgt.
‫Jope wird durch die einzelnen Zeilen gehen.
‫Das bedeutet, dass wir jetzt weitermachen können.
‫Und machen Sie einfach unsere richtige Aussage hier, aber dann haben wir natürlich keinen Artikel hier, also was
‫haben wir?
‫Nun, wir haben die Matrix, die statische Variable, die wir hier oben erstellt haben.
‫Aber diese Matrix muss wissen, welche Elemente sie anzeigen soll.
‫Also werde ich sagen, ich zeige einfach I j an.
‫Was bedeutet, dass angezeigt wird, wenn.
‫Rollen Sie an der Jeff-Spalte, was im Grunde bedeutet, dass ich in der ersten Iteration null sein werde.
‫Und dann beginnen wir mit diesem Band und dieses Band wird es durchlaufen, bis es fertig ist.
‫Und dann geht es nur zur nächsten Iteration der Out-of-the-Loop.
‫Nur dann werde ich um eins erhöht.
‫OK, das bedeutet also, dass ich bei Null bleiben werde, bis wir dieses Volumen durchlaufen haben, was bedeutet, dass wir bei
‫Null für I beginnen und dann in der ersten Iteration J gleich Null ist.
‫Wir erhalten also den ersten Eintrag, dann ist J eins, weil wir inkrementiert haben, sobald wir diese Codezeile
‫durchlaufen haben, und wir sie um eins erhöhen.
‫Also wird J jetzt eins und wir sagen null eins.
‫Die Position Null Eins unserer Matrix wird hier diese Zwei sein, dann wird J die Zwei sein, die diese Drei
‫sein wird.
‫Und dann prüfen wir, ob.
‫Zwei plus eins, das wird gut, Jay, wenn die Dauer um drei kürzer ist als die Länge
‫der aktuellen Dimension, die wir betrachten.
‫Und die Dimension wird die Spaltendimension sein.
‫Wie viele Spalten haben wir also?
‫Und in diesem Fall haben wir drei Spalten.
‫Drei ist also nicht weniger als drei, weshalb dieser Band mit seiner Ausführung fertig sein wird.
‫Und wir gehen wieder zur äußeren for-Schleife.
‫Also erhöhen oder erhöhen wir dieses Mal I.
‫Mit Eins, was bedeutet, dass ich jetzt eins sein werde, und dann durchlaufen wir diese for-Schleife noch einmal dreimal, also haben
‫wir I eins und null in der ersten Iteration davon in einer for-Schleife, dann ist es eins, dann es werden
‫zwei sein.
‫Es wird also im Grunde dieses Element durchlaufen, dann dieses Element als dieses Element, und jedes Mal wird es
‫auf die Konsole geschrieben und ein leerer Raum hinterlassen.
‫Und dann wird in der ersten Iteration unserer Schleife oder hier außerhalb der Schleife sozusagen die letzte Zeile
‫durchlaufen.
‫Das hier ist also ein verschachteltes für.
‫Aussehen.
‫OK, also lassen Sie uns das ganz schnell ausführen, nur um zu sehen, ob dies tatsächlich
‫das tut, was ich sage, und Sie können hier sehen, nun, vielleicht sollte ich es etwas anders drucken.
‫Hier mache ich einen weiteren Zeilenumbruch.
‫Also versuchen wir es noch einmal.
‫Sie sehen, dies ist unser 2D-Array, das mit der verschachtelten for-Schleife gedruckt wurde.
‫Das ist dieser hier.
‫Dieser war der für jede Schleife.
‫Und jetzt könnten Sie sagen, hey, was ist der Vorteil, Dennis?
‫Macht das überhaupt Sinn?
‫Mir gefällt nicht, was du da machst.
‫Ich bevorzuge es, die für jede Schleife zu verwenden.
‫Sie sehen, es ist super einfach, sehr wenig Code, den ich benötige.
‫Das Coole hier ist, dass ich direkten Zugriff auf den Artikel habe, den ich gerade ansehe.
‫Also hier in diesem Fall, ich iteriere es nur.
‫Aber was wäre, wenn ich weitermachen und ihm einen neuen Wert zuweisen würde?
‫Sagen wir, ich weise ihm null zu.
‫Wenn wir dies jetzt ausführen, erhalten wir eine Reihe von Nullen.
‫Hier sehen Sie null null null null.
‫So kann ich jetzt eine Logik erstellen, mit der ich beispielsweise den Wert überschreiben würde.
‫Und das ist mit einer for-Every-Schleife nicht einfach zu erreichen, für jede supertoll zu sein,
‫nur etwas anzuzeigen und etwas Code für jeden einzelnen Artikel auszuführen, aber den Artikel selbst nicht
‫speziell zu ändern, weil der Artikel nur ein kurzfristiger Speicherort ist für welchen Wert wir auch immer im Inneren haben.
‫Sammlung, die wir uns ansehen, und das ist bei einem Nesat Falu anders, und das ist bereits ein Vorteil, den Sie
‫hier sehen.
‫Aber es gibt noch andere Vorteile, und wir werden uns mit diesem speziellen Beispiel, das wir hier haben, einige
‫weitere Beispiele für verschachtelte for-Schleifen ansehen.
‫Wir werden es im nächsten Video ein wenig anpassen.
‫Und Sie werden zum Beispiel sehen, wie Sie gerade Zahlen oder ungerade Zahlen aus Ihrer for-Schleife erhalten und
‫dann auch sehen, wie Sie sie so anpassen können, dass Sie zum Beispiel nur diagonale Elemente drucken, denn so erhalten Sie ein
‫allgemeine Vorstellung davon, was Sie für Schleifen verwenden können, oder es sei denn, es wird umgedreht.
‫Und im Grunde hat man so viel Freiheit und Programmierung.
‫Und ich wollte Ihnen nur ein paar weitere Werkzeuge geben, die Sie verwenden können.
‫OK, an dieser Stelle würde ich sagen, gehen wir zum nächsten Video, in dem wir uns das ansehen werden.