Refazendo uns exercícios eu percebi que existe mais de uma forma de interromper o while. Anteriormente, como aprendi, utilizava uma variável do tipo boolean, como: (
)
Mas percebi que essa variável pode ser desnecessária, usando como alternativa o próprio índice para parar o ciclo (o que poderia poupar memória se em larga escala)(

)
Além destas, existe alguma outra forma de parar o ciclo do while? Algum comando ou alguma outra ‘fórmula’?
Bom, você pode usar qualquer expressão que produza o valor verdadeiro ou falso.
Quando vc trabalha com variáveis do tipo boolean
não há necessidade de fazer algo como:
if ( encontrou == true ) { /* ... */ }
/* Ou */
if ( encontrou == false ) { /* ... */ }
Dá pra fazer apenas isso:
if ( encontrou ) { /* ... */ }
/* Ou */
if ( !encontrou ) { /* ... */ }
A menos que vc queira ser explicito desta forma.
Seguindo esta ideia, seu primeiro código poderia ficar assim:
while ( i < numeros.length && !encontrou )
/* ... */
Uma outra forma de fazer seria assim:
while ( i < numeros.length )
if ( n == numeros[i] ) return i;
else i++;
return -1;
1 curtida