Veuillez noter ce que ce code génère ?
/** * @author 面试专栏 * @date 2021/7/11 13:57 */ public class Test1 { public static void main(String[] args) { //输出什么? test(); } public static void test() { for (int i = 4; i > 0; i--) { int j = 0; do { j++; if (j == 2) { break; } } while (j <= i); System.out.print(j); } } }
En voyant cette question, beaucoup de gens penseront que c'est trop simple. En fait, cette question teste trois points de connaissance
for
boucle for
循环do...while
循环break
faire... pendant que
Boucle🎜🎜pause
Sortie🎜🎜🎜🎜Ne le sous-estimez pas. J'ai également demandé à beaucoup de gens, et les réponses sont toutes étranges. Il y a quatre réponses qui apparaissent le plus : 🎜.4321
1232
2211
2222
你觉得是哪个?还是觉得都不是?
do...while循环是while循环的变种,在检查条件是否为真之前,该循环其实已经执行过一次了,然后在检查条件是否为真,如果为true,就重复执行这个循环。注意:只要循环体中执行break
后也会结束循环。
for(表达式1;表达式2;表达式3){ //循环体 }
这个循环体执行步骤如下:
return
, break
mot-clé. return
、break
关键字。第一次进入for循环体时,i=4,然后计入do...while循环体,此时j=0,然后这个循环一直执行j++,直到j=2或者j>i的时候退出循环体,显然此时j=2,也就是此时输出的是2。
下一次for循环时,i=3,同理输出还是2,
下一次for循环时,i=2,同理输出依然是2,
下一次for循环时,i=1,同理输出结果是2,此时执行foe循环的i--操作,i=0,不满足i>0的条件了,此时for循环退出。
所以,最后输出结果为:2222
Lorsque vous entrez dans le corps de la boucle for pour la première fois, i=4, puis inclus dans le corps de la boucle do...while, j=0 à ce moment, puis cette boucle continue de s'exécuter j++ jusqu'à j=2 ou Quittez le corps de la boucle lorsque j>i Évidemment j=2 à ce moment, c'est-à-dire que la sortie à ce moment est 2.
La prochaine fois dans le for boucle Quand, i=3, de même, la sortie est toujours 2, 🎜🎜🎜🎜🎜
La prochaine boucle for, i=2, la même sortie est toujours 2, 🎜🎜🎜🎜🎜
La prochaine fois que la boucle for est exécutée, i=1, et de même, le résultat de sortie est 2. À ce moment, le i -- l'opération de la boucle ennemie est exécutée, i = 0, la condition i>0 n'est plus remplie et la boucle for se termine à ce moment. 🎜🎜🎜🎜Donc, le résultat final est : 2222
. 🎜🎜🎜Postscript🎜🎜 🎜🎜🎜Dans les questions des tests écrits de nombreuses entreprises, ne les sous-estimez pas, il y a des pièges et vous pouvez y tomber accidentellement. Lorsque vous rencontrez ce genre de question de test écrit sur les cycles, je vous suggère de réfléchir calmement et de procéder étape par étape. 🎜🎜🎜🎜🎜Dans l'épreuve écrite, plus le code semble simple, moins vous devez le prendre à la légère. 🎜
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!