Tengo un ciclo que usa la sintaxis for (NSObject * obj in someArray) {}. ¿Hay alguna manera fácil de saber si estoy en la última iteración del ciclo (es decir, sin tener que usar [algún conteo de Array])Cómo saber si estoy en la última iteración de un ciclo de X en Y en Objective-C
6
A
Respuesta
15
Quizás esto funcione?
if (obj == [ someArray lastObject ]) {
// ...
}
14
Se puede usar para determinar si NSArray#lastObject
obj
es igual a [NSArray lastObject]
.
for (NSObject *obj in someArray) {
if ([someArray lastObject] == obj) {
NSLog(@"Last iteration");
}
}
5
En lugar de la llamada en la matriz en cada iteración, se podría ser mejor para almacenar en caché el último objeto de la matriz:
NSObject *lastObject = [someArray lastObject];
for (NSObject *obj in someArray) {
// Loop code
if (obj == lastObject) {
// do what you want for the last array item
}
}
Cuestiones relacionadas
- 1. para x en y, tipo de iteración en python. ¿Puedo averiguar en qué iteración estoy actualmente?
- 2. Plantilla de Django para ciclo - Última iteración
- 3. Cómo saber Esta es la última iteración de un bucle?
- 4. ¿Cómo puedo detectar la última iteración en un ciclo sobre std :: map?
- 5. will_paginate averiguar si estoy en la última página
- 6. ¿Cómo saber si estoy en una devolución de datos?
- 7. obtener la última iteración en jquery cada
- 8. ¿Cómo puedo saber si estoy en el depurador en Android?
- 9. ¿Cómo atrapar la última iteración dentro de $ .each en jQuery?
- 10. ¿Se evalúa la condición en un ciclo for cada iteración?
- 11. ¿Cómo la iteración es la última en HashMap?
- 12. Última iteración del bucle for mejorado en java
- 13. Python, próxima iteración del ciclo sobre un ciclo
- 14. ¿Cómo puedo reconocer la última iteración en C++ while loop?
- 15. ¿Cómo puedo saber en qué subrutina estoy?
- 16. Learning Git. Necesito saber si estoy en el camino correcto
- 17. ¿Puede un sitio web saber si estoy ejecutando un UserScript?
- 18. ¿Cómo puedo saber si estoy huyendo de JRuby vs. Ruby?
- 19. Python Última iteración en For Loop
- 20. ¿Cómo puedo saber en elisp si Emacs usa X?
- 21. ¿Cómo saber si actualmente se encuentra en la última fila de una tabla HTML?
- 22. ¿Cómo omito una iteración de un ciclo `foreach`?
- 23. PHP: ¿Cómo se determina cada enésima iteración de un ciclo?
- 24. ¿Cómo puedo saber si estoy en una pila de excepción de Delphi?
- 25. ¿Cómo implementar un puente sin cargo en ObjectiveC/C?
- 26. Cómo usar un bucle foreach, pero hacer algo diferente en la última iteración?
- 27. Cómo borrar la última línea en la ventana de comandos
- 28. ¿Cómo saber si NSString encaja en UILabel o no y el índice de la última cadena que cabe?
- 29. ¿Cómo saber si un cierre está actualmente en curso?
- 30. ¿Por qué no imprimir nada en cada iteración de un ciclo cuando uso sleep?
Todavía estás llamando al método en el bucle. Creo que quisiste intercambiar las dos primeras líneas. Otro pequeño error tipográfico: 'F' en mayúscula en "For" – gclj5
Gracias por señalar eso - Lo editaré. – Abizern