‫Très bien, alors maintenant que vous savez comment utiliser une course et vous habiller aussi bien pour chaque troupe,
‫combinons-les, combinons les concepts dans une vidéo et un exemple.
‫Mais regardons aussi les forums imbriqués.
‫Donc cette vidéo, nous allons passer en revue ces différentes fonctionnalités et ensuite nous verrons quand utiliser une boucle
‫for imbriquée et quels sont les avantages d'une boucle for imbriquée par rapport à une boucle for chaque lorsqu'il s'agit,
‫par exemple, de multidimensionnel tableaux.
‫OK, alors commençons.
‫La première chose que j'ai ici est, comme vous pouvez le voir, cette matrice, qui est
‫un tableau à deux dimensions, qui a trois éléments vers chaque dimension.
‫OK, donc trois lignes et trois colonnes, pour ainsi dire.
‫Je vais donc utiliser la boucle pour chaque en utilisant le mot-clé pour chaque mot-clé ici.
‫Celui-ci et DTAP.
‫Et cela me permettra ensuite de saisir très rapidement de quel type il s'agit, comment je veux
‫appeler l'élément de la collection que je parcours et la collection.
‫C'est donc une petite astuce intéressante si vous voulez devenir un codage plus rapide.
‫Ainsi, l'élément sera de type entier parce que nous voulons parcourir cette matrice, qui contient
‫un tas d'entiers, et l'élément que nous pouvons suivre.
‫Nous pourrions l'appeler NUM car c'est un nombre que nous pourrions appeler élément.
‫Ce seraient des noms normaux que vous verriez ici, mais l'article ira bien pour le moment.
‫Et puis la collection que je veux parcourir sera ma matrice que j'ai préparée ici.
‫Et c'est aussi la raison pour laquelle j'avais besoin de rendre cette matrice statique car je l'utilise
‫dans ma méthode principale statique et vous ne pouvez pas utiliser d'éléments non statiques qui étaient des variables à l'intérieur de la méthode principale statique ou à
‫l'intérieur des méthodes statiques en général.
‫OK, donc pour parcourir cela pour chaque groupe et afficher les éléments de la matrice, nous pouvons simplement continuer
‫et utiliser la console.
‫Déclaration de la ligne droite ici.
‫Alors S. W. double tabulation et ici, je vais juste dire afficher l'élément, puis créer un espace vide.
‫Ou créez un espace vide et n'utilisons pas la ligne rouge, mais c'est vrai, donc cela l'écrira simplement sur une
‫ligne et ne créera pas une nouvelle ligne tout le temps.
‫Maintenant, allons-y très vite.
‫Et nous verrons que nous en avons un, deux, trois, quatre, cinq, six, sept, huit, neuf.
‫OK, donc tous les éléments que nous avons ici dans notre matrice sont affichés.
‫Nous l'utilisons donc pour chaque boucle pour parcourir chaque élément à l'intérieur de cette matrice.
‫Et cela va juste de gauche ou en haut à gauche en bas à droite, pour ainsi dire, dans notre exemple ici.
‫OK, donc pour chacun des deux, c'est un outil puissant.
‫Cela nous permet de parcourir une collection et une matrice 2D, une matrice 3D, quel que soit le nombre de dimensions
‫que vous souhaitez avoir, toutes celles-ci ne sont finalement que des collections, car ici nous utilisons un tableau et un tableau
‫est un type de une collection.
‫OK, et c'est ce dont nous avions besoin pour donner à chaque boucle l'itération.
‫Alors parcourez notre matrice de collecte.
‫Alors maintenant, nous pouvons aller de l'avant et l'utiliser pour vous montrer comment vous auriez pu y parvenir en utilisant une boucle for
‫imbriquée.
‫OK, donc le pour chaque groupe est super utile si vous voulez juste passer en revue
‫chaque élément de celui-ci, mais il présente certains inconvénients en termes de certaines situations.
‫Donc, dans le cas où vous souhaitez maintenant modifier l'élément, vous ne pouvez pas le faire car il est protégé.
‫Vous ne pouvez donc pas dire que l'élément doit maintenant être remplacé par trois, par exemple, comme vous pouvez le voir
‫ici.
‫Donc, si vous essayez cela, il est dit impossible d'attribuer à l'élément car il s'agit d'une variable pour chaque itération.
‫OK, ce n'est donc pas l'élément réel, c'est vraiment juste le stockage de valeur, pour ainsi dire.
‫Nous stockons donc la valeur que nous examinons actuellement dans notre collection et ce que nous stockons ici, la valeur
‫de celle-ci.
‫Donc, dans la première itération, c'est un, dans la deuxième itération, c'est deux, mais ce n'est jamais en fait la
‫valeur elle-même.
‫C'est seulement une référence à la valeur.
‫OK, donc cela ne nous aide vraiment pas.
‫Donc, si nous voulons réellement ajuster, nous aurions besoin de quelque chose comme une boucle for imbriquée.
‫OK, alors ici, allons-y et créons un nid.
‫Je vais ajouter une petite déclaration de ligne rouge ici, disant que cela imprime notre tableau à l'aide d'un dossier imbriqué.
‫Alors, qu'est-ce qu'un volume imbriqué ?
‫Eh bien, c'est essentiellement un dossier avec une autre boucle for à l'intérieur.
‫OK, donc ici, nous allons en utiliser quatre et nous pouvons à nouveau appuyer deux fois.
‫On passe donc de I zéro à la longueur.
‫Donc ici, nous devons entrer la longueur de l'itération.
‫Donc, ce que je vais faire ici, c'est que je vais utiliser ma matrice, mais je pourrais bien sûr utiliser la longueur
‫ici et cela me donnerait alors la longueur de la matrice entière.
‫Donc en gros le nombre d'éléments que j'ai à l'intérieur de cette matrice, mais ce n'est pas ce que je veux.
‫Je veux parcourir chaque dimension, donc je veux la parcourir ligne par ligne et colonne par colonne.
‫La première dimension sera donc les lignes.
‫Je peux donc utiliser une méthode offerte par les tableaux.
‫Ainsi, la classe de tableau a cette méthode de grande longueur où je dois analyser la dimension.
‫OK, donc cela me donnera le nombre représenté ou vous pouvez simplement voir ici qui représente le nombre
‫d'éléments dans la dimension spécifiée du tableau.
‫Donc, dans mon cas, si j'entre zéro, cela renverra maintenant le zéro avec une dimension qui signifie essentiellement les
‫lignes.
‫OK, donc cela me donnera les lignes.
‫Alors maintenant, si je veux parcourir chaque colonne individuelle, je dois utiliser une autre boucle for ici.
‫Ce sera donc mon volume intérieur, comme la boucle for interne.
‫OK, et celui-ci ici, ce sera la boucle for externe.
‫D'accord alors.
‫Ce que nous devons maintenant changer, bien sûr, va être le nom de la variable d'itération, donc ici nous allons utiliser
‫Jay au lieu de I.
‫C'est une pratique courante.
‫Donc, si vous avez un dans une photo, vous utilisez généralement Jay ici comme nom de variable de compteur.
‫Mais maintenant, nous voulons comparer Jay non pas à la longueur de la première dimension, mais de la deuxième dimension.
‫Nous en saisissons donc un ici.
‫Cela me permettra donc maintenant de parcourir chaque colonne.
‫Donc, ce travail de Falu consistera à parcourir les colonnes individuelles et cela suit.
‫Jope passera par le sera de passer par les rangées individuelles.
‫Cela signifie donc que nous pouvons maintenant aller de l'avant.
‫Et faites juste notre bonne déclaration ici, mais alors, bien sûr, nous n'avons pas d'article ici, alors
‫qu'avons-nous ?
‫Eh bien, nous avons la matrice, la variable statique que nous avons créée ici.
‫Mais cette matrice, elle a besoin de savoir quels éléments elle doit afficher.
‫Je vais donc dire simplement afficher I j.
‫Ce qui signifie affiché que si.
‫Roulez à la colonne Jeff, ce qui signifie essentiellement dans la première itération, ce I sera zéro.
‫Et puis nous commençons avec ce volume et ce volume le parcourra jusqu'à ce qu'il soit terminé.
‫Et ensuite, il n'ira qu'à la prochaine itération de la sortie de la boucle.
‫Alors seulement, je serai incrémenté de un.
‫OK, donc cela signifie que I va rester à zéro jusqu'à ce que nous ayons parcouru ce volume, ce qui signifie que nous commençons
‫à zéro pour I, puis nous avons J égal à zéro dans la première itération.
‫Nous obtenons donc la première entrée, puis nous avons J étant un parce que nous avons incrémenté une fois que nous avons parcouru
‫cette ligne de code et nous l'avons augmenté de un.
‫Alors maintenant, J va être un et nous disons zéro un.
‫Donc la position zéro un de notre matrice va être ce deux ici, alors J va être deux qui sera
‫ce trois.
‫Et puis nous vérifions est.
‫Deux plus un, ce qui va être bien, Jay, étant incrémenté après que la durée soit trois de moins que la
‫longueur de cette dimension actuelle que nous examinons.
‫Et la dimension va être la dimension de la colonne.
‫Alors combien de colonnes avons-nous ?
‫Et dans ce cas, nous avons trois colonnes.
‫Donc trois n'est pas moins que trois, c'est pourquoi ce volume sera fait avec son exécution.
‫Et nous retournons à la boucle for externe.
‫Donc, cette fois, nous augmentons ou incrémentons I.
‫Par un, ce qui signifie que je serai maintenant un, puis nous parcourons à nouveau cette boucle for trois fois, donc nous avons
‫I étant un et étant zéro dans la première itération de ceci dans une boucle for, alors ce sera un, puis ce
‫sera deux.
‫Donc, il passera essentiellement par cet élément, puis cet élément puis cet élément, et à chaque fois, il l'écrira
‫sur la console et laissera un espace vide.
‫Et puis dans la première itération de notre boucle ou hors de la boucle ici, il passera par la dernière ligne, pour ainsi
‫dire.
‫Voici donc un imbriqué pour.
‫Voir.
‫OK, alors allons-y très vite juste pour voir si cela va réellement faire ce
‫que je dis et vous pouvez voir ici, eh bien, je devrais peut-être l'imprimer légèrement différemment.
‫Ici, je vais avoir un autre saut de ligne.
‫Comme, alors essayons à nouveau.
‫Donc, vous voyez, c'est notre tableau 2D imprimé à l'aide de la boucle for imbriquée.
‫C'est celui-ci ici.
‫Celui-ci était le pour chaque boucle.
‫Et maintenant, à ce stade, vous pourriez dire, hé, quel est l'avantage, Dennis ?
‫Cela a-t-il même un sens ?
‫Je n'aime pas ce que tu fais là.
‫Je préfère utiliser le for chaque boucle.
‫Vous voyez, c'est super simple, très peu de code dont j'ai besoin.
‫Bien que ce qui est cool ici, c'est que j'ai un accès direct à l'élément que je regarde actuellement.
‫Donc, ici dans ce cas, je ne fais qu'itérer à travers elle.
‫Mais que se passe-t-il si j'allais lui attribuer une nouvelle valeur ?
‫Disons que je lui attribue zéro.
‫Alors maintenant, si nous exécutons ceci, nous obtiendrons un tas de zéros.
‫Ici vous voyez zéro zéro zéro zéro.
‫Alors maintenant, je peux créer une logique avec laquelle je remplacerais, par exemple, la valeur.
‫Et ce n'est pas facilement réalisable avec une boucle pour chaque, pour que chacun soit super
‫génial, pour simplement afficher quelque chose et exécuter du code pour chaque élément, mais sans modifier spécifiquement
‫l'élément lui-même, car l'élément n'est qu'un emplacement de stockage à court terme pour toute valeur que nous avons à l'intérieur du.
‫Collection que nous regardons, et c'est différent pour un Nesat Falu, et c'est déjà un avantage que vous
‫voyez ici.
‫Mais il y a d'autres avantages et nous allons examiner d'autres exemples de boucles for imbriquées avec cet
‫exemple particulier que nous avons ici.
‫Nous allons l'ajuster un peu dans la prochaine vidéo.
‫Et vous allez, par exemple, voir comment vous pouvez obtenir des nombres pairs ou impairs à partir de votre
‫boucle for et ensuite voir aussi comment vous pouvez l'ajuster pour que vous n'imprimiez, par exemple, que des éléments diagonaux, car cela vous donnera un
‫idée générale de ce que vous pouvez utiliser pour les boucles ou à moins qu'il ne bascule pour.
‫Et fondamentalement, vous avez tellement de liberté et de programmation.
‫Et je voulais juste vous donner quelques outils supplémentaires que vous pouvez utiliser.
‫OK, donc à ce stade, je dirais que nous passons à la vidéo suivante où nous allons regarder cela.