Je pense que c'est une question intéressante. Nous pouvons boucler dans un sens mais pouvons-nous le boucler en arrière sur la même ligne? Permettez-moi d'expliquer ce que je veux dire. Voici un exemple de code:
for(int i = 0; i < 5; i++) { // we all know the output will be 0,1,2,3,4
Je cherche s'il existe une solution de contournement pour que la déclaration ci-dessus puisse s'imprimer 0,1,2,3,4,3,2,1,0
?
Avec un peu d'arithmétique, vous pouvez:
Mais simplement utiliser deux
for
boucles est plus facile à écrire et à lire.la source
Voici
Production:
la source
la source
Il n'y a pas de moyen vraiment simple de le faire, mais avec quelques modifications, vous pouvez vous retrouver avec une boucle qui peut changer de direction:
la source
En Java (générique, ne doit pas nécessairement être compris entre 0 et N):
Dans JavaScipt (juste pour que vous puissiez voir la démo en direct):
la source
Un liner générique, toute la logique est dans les
for
expressions.la source