Sortie rapide des boucles

Je vous invite à programmer vos boucles, et plus spécifiquement vos conditions de test, pour sortir au plus vite des boucles.

Par exemple, dans le cas suivant :

1
2
3
4
5
6
7
boolean ok = false ;
for(Foo foo : foos) {
  if( foo.truc() ) {
     ok = true ;
  }
}
return ok ;

Dans ce genre de cas, pensez à mettre un « break » dans votre boucle, pour ne pas continuer à parcourir inutilement la liste, puisque la valeur est calculée et ne changera plus.

1
2
3
4
if( foo.truc() ) {
  ok = true ;
  break ;
}

Ou même mieux, carrément, quand vous pouvez :

1
2
3
4
5
6
for(Foo foo : foos) {
  if( foo.truc() ) {
    return true ;
  }
}
return false ;

Si vous ne pouvez pas, c’est sûrement le signe qu’il faut mettre la portion de code dans une autre méthode spécifique.

Si en plus vous pouvez faire des appels terminaux, c’est le top.

Laisser un commentaire