¿Se puede escribir un bucle for en Java para crear un bucle infinito o solo son los bucles while los que causan ese problema?¿Se puede escribir un bucle for para crear un bucle infinito o solo son bucles while que hacen eso?
¿Se puede escribir un bucle for para crear un bucle infinito o solo son bucles while que hacen eso?
Respuesta
También puede hacerlo con bucles for. P.ej. el siguiente es idéntico al while(true)
:
for(;;) {
}
+1 Más críptico. – asgs
Use 'for (;;);' para un ciclo infinito más corto :-) –
for(;;){}
es igual que
while(true){}
+1, lo que demuestra la transformación. – mre
Esto es bastante quisquilloso (y de hecho puede ser incorrecto, de todos modos, lo obtuve de un niño dos grados encima de mí en la escuela secundaria), pero había oído que 'para (;;)' se compila en un no -condicional 'jmp' o lo que sea, mientras que para' while (true) 'primero verifica que' true' se evalúa como 'true'. – tsm
Claro que se puede
for(int i = 0; i == i; i++) {}
Cualquier bucle pueden ser por infinita siempre y cuando se haga de manera nunca golpear las condiciones de salida.
No se olvide errores como
for (int i=0; i<30; i++)
{
//code
i--;
}
No es tan infrecuente como debe ser.
voy a añadir esto ya que nadie hizo esta versión:
for(;;);
Aparte de las cuestiones de alcance y una otra cosa, esto:
for(<init>; <test>; <step>) {
<body>
}
es lo mismo que:
<init>
while(<test>) {
<body>
<step>
}
Como han mencionado otras personas, de la misma manera que puede tener un bucle while
sin un <init>
forma o <step>
forma, puede tener un bucle for
sin ellos:
while(<test>) {
<body>
}
es lo mismo que
for(;<test>;) {
<body>
} //Although this is terrible style
Y, por último, usted podría tener un
for(;true;) {
<body>
}
Ahora, recuerde cuando dije que había otra cosa? Es que no lo hacen bucles for
necesitan una prueba - dando la solución a todos los demás ha publicado:
for(;;) {
<body>
}
Olvidó el bucle for-each: siempre puede escribir un iterador que repite siempre>: - D –
Por supuesto para los bucles pueden causar bucles infinitos. Un ejemplo es:
for(int i = 0; i < 99; i /= 2){ ... }
Debido i
no se incrementa, permanecerá en el cuerpo del bucle for
siempre hasta que salga del programa.
Sólo por diversión (y esto demasiado tiempo para un comentario): una gran cantidad de la gente va a ser muy sorprendido al saber que para muchos propósitos muy prácticos, la siguiente es casi un bucle infinito:
for (long i = Long.MIN_VALUE; i < Long.MAX_VALUE; i++) {
...
}
Si el hilo de la ejecución de este bucles pueden hacer 4 mil millones de ciclos por segundo y puede hacer el incremento y el cheque en un ciclo (bastante fornido para un solo hilo) y si mis matemáticas no son totalmente fuera, creo que el anterior el código necesita aproximadamente 150 años para ejecutarse:)
se puede declarar una subparte del código para ser otra parte en un bucle for, ejemplo -
public class (classname) {
for(int i = 1; i <= 4; i++) {
for(int j = 1; i <= 4; j++) {
system.out.println(i + "*" + j + "=" (i*j));
}
}
es casi en bucle infinito; si cambia int a long, y añadir más variables, prácticamente se puede hacer que dure 25 x 10^12 minutos de duración
¡Perder más tiempo no lo convierte en un bucle infinito! – Swapnil
También es éste, para completar el tema:
do {something();} while(true);
La forma en que hecho que mi servidor para ejecutar todo el tiempo hasta que apagarlo es
for(int i = 0;i<-1;i++){//code here}
Hay un montón de maneras de hacer que los bucles infinitos. Esta es la solución que encontré:
int j = 1;
for (int i = 0; i < j; i++) {
//insert code here
j++;
}
Esto funciona muy bien para mí, ya que permite el bucle para comprobar una cantidad infinita de valores, así como un bucle infinito.
- 1. ¿Mejores bucles de juego que bucle infinito + bloque?
- 2. Obtener cuenta de bucles dentro de un bucle FOR Python
- 3. Mejor bucle infinito
- 4. Diferencia entre el bucle "while" y el bucle "do while"
- 5. ¿Por qué el bucle en range() en Python es más rápido que usar un bucle while?
- 6. Java: Vacío bucle while
- 7. C# flotan bucle infinito
- 8. Escribir en un archivo en un bucle for
- 9. ¿Cómo se divide un infinito para el bucle (;;) en C?
- 10. ¿Cómo puedo eliminar un pthread que está en un bucle infinito, desde fuera de ese bucle?
- 11. Infinito IEnumerable en un bucle foreach
- 12. Paralelo de un bucle for
- 13. Predicado Prólogo - bucle infinito
- 14. Cierres en un bucle for
- 15. Contador de bucle de Python en un bucle for
- 16. bucle infinito en C++
- 17. Scala: ¿se puede usar varias veces con un bucle for?
- 18. ¿Cómo se prueba un método que se ejecuta en un bucle infinito para alguna entrada?
- 19. Cómo interrumpir correctamente un bucle infinito QThread
- 20. Finalizer atrapado en un bucle infinito
- 21. Cómo crear un bucle infinito en el archivo por lotes de Windows?
- 22. Cómo evitar un bucle infinito en ASP.net
- 23. ¿Cómo funciona un bucle for, específicamente para (;;)?
- 24. ¿Cómo organizar el bucle while infinito en SQL Server?
- 25. PHP bucle while añadir un 2
- 26. ¿Deberían preferirse los "bucles while" a los "bucles for" para bucles grandes y necesarios en R?
- 27. Uso de Continuar en un bucle While
- 28. Conjunto MIPS para un bucle for simple
- 29. Jquery - bucle infinito
- 30. bucle infinito en java.util.HashMap
Soy nuevo en la programación: mi libro de texto menciona ciclos infinitos solo en el contexto de un ciclo while. – Genki
Un ciclo for es solo otra sintaxis para un ciclo while. Todo lo que es posible con uno de ellos también es posible con el otro. –
Cualquier bucle for donde la condición de terminación nunca se puede cumplir será infinito: 'for ($ i = 0; $ i> -1; $ i ++) {...}' –