De l'art d'utiliser le break - Java - Programmation
Marsh Posté le 25-10-2002 à 14:28:34
bien sur
ce qui est bad c'est le goto sauf dans un seul cas
Marsh Posté le 25-10-2002 à 14:28:36
on peut, propre pas trop trop, mais quand on a pas le choix ... ca permet parfois de limiter grandement le nombre d'itérations
Marsh Posté le 25-10-2002 à 14:29:17
HappyHarry a écrit a écrit : on peut, propre pas trop trop, mais quand on a pas le choix ... ca permet parfois de limiter grandement le nombre d'itérations |
qd j'ai dis bien sur c'est avec un certain bon sens bien sur
Marsh Posté le 25-10-2002 à 14:30:52
DarkLord a écrit a écrit : bien sur ce qui est bad c'est le goto sauf dans un seul cas |
Alors, la question que tu attends : dans quel cas ?
Marsh Posté le 25-10-2002 à 14:32:21
_Mac_ a écrit a écrit : Alors, la question que tu attends : dans quel cas ? |
goto bed
Marsh Posté le 25-10-2002 à 14:35:54
_Mac_ a écrit a écrit : Alors, la question que tu attends : dans quel cas ? |
lorsque tu as deux boucles imbriquées et que tu veux sortir des deux boucles avec une seule instruction.
Marsh Posté le 25-10-2002 à 14:36:02
HappyHarry a écrit a écrit : on peut, propre pas trop trop, mais quand on a pas le choix ... ca permet parfois de limiter grandement le nombre d'itérations |
Le break est effectivement bien utilisé dans ce cas
Marsh Posté le 25-10-2002 à 14:42:16
DarkLord a écrit a écrit : lorsque tu as deux boucles imbriquées et que tu veux sortir des deux boucles avec une seule instruction. |
Effectivement... T'aurais pas intérêt quand même à utiliser un booléen pour signaler à la première boucle que tu as fait un break dans la deuxième et éventuellement refaire un break ?
Marsh Posté le 25-10-2002 à 14:48:12
_Mac_ a écrit a écrit : Effectivement... T'aurais pas intérêt quand même à utiliser un booléen pour signaler à la première boucle que tu as fait un break dans la deuxième et éventuellement refaire un break ? |
ca fait un test de plus à chaque itération -> l'utilité du goto dans ce cas (au niveau perf)
Marsh Posté le 25-10-2002 à 16:18:11
DarkLord a écrit a écrit : lorsque tu as deux boucles imbriquées et que tu veux sortir des deux boucles avec une seule instruction. |
et les étiquettes ça sert à quoi alors !!!!!
po bien ça ! Il faut erradiquer le goto
Marsh Posté le 25-10-2002 à 16:32:48
bobuse a écrit a écrit : et les étiquettes ça sert à quoi alors !!!!! po bien ça ! Il faut erradiquer le goto |
Marsh Posté le 25-10-2002 à 16:42:01
DarkLord a écrit a écrit : bien sur ce qui est bad c'est le goto sauf dans un seul cas |
Citation : Unlike C and C++, the Java programming language has no goto statement; |
Marsh Posté le 25-10-2002 à 16:56:49
Sauf que "goto" est quand même un mot réservé en Java...
Le break peut être utile aussi dans des boucles où la condition d'arrêt est au milieu de la boucle :
loop |
Vous allez me dire, ça se simule très bien, soit en dupliquant le code (beurk ! trappe à bugs, pourtant utilisée dans 80 % des cas), soit avec un joli booléen dans un while. Mais à mon avis, la solution de la boucle infinie rend le code moins complexe.
En C/C++, ça se lit très bien si on utilise les macros :
Code :
|
Ce qui donne :
Code :
|
En Java, l'absence de macros oblige à utiliser explicitement le "break".
Marsh Posté le 25-10-2002 à 17:26:21
Biface >>>
Marsh Posté le 25-10-2002 à 21:48:43
_Mac_ a écrit a écrit : Petite question de comptoire tranquille de vendredi après-midi : Peut-on, ou est-ce propre, d'utiliser l'instruction break dans une boucle (for ou while) ? |
Le break aussi c'est bien aussi pour eviter des "return" multiples, ou en milieu d'iteration:
result = null
boucle {
if (condition) {
result = valeur_courante
break
}
}
return result
Marsh Posté le 25-10-2002 à 22:33:44
art_dupond a écrit a écrit : c'est quoi les étiquettes ? |
exemple on cherche les coordonnées de la valeur 1 dans une matrice représentée par un tableau à 2 dimenssions :
Code :
|
Marsh Posté le 25-10-2002 à 23:20:18
j'en reviens pas : j'ai fais un recherche sur java et le goto sur le site de java de sun et je tombe sur ca :
http://developer.java.sun.com/deve [...] t0613.html
et y a exactement l'exemple que j'ai donné
y a même le coup de la variable target et tout.
je l'avais inventé sur le moment pourtant !
Marsh Posté le 25-10-2002 à 23:22:33
je vois pas pkoi vous vous prenez la tête avec le goto. en java y a pas de goto. point.
Citation : In the JavaTM programming language, goto is a reserved word; the Java programming language does not have a goto statement. However there are alternative statements that you can use in the Java programming language in place of the goto statement. |
c'est juste un mot reservé mais y a rien derrière.
Marsh Posté le 25-10-2002 à 14:27:38
Petite question de comptoire tranquille de vendredi après-midi :
Peut-on, ou est-ce propre, d'utiliser l'instruction break dans une boucle (for ou while) ?