Sto studiando Objective-C e mi sono imbattuto in questa frase "for ... in". L'ho cercato ma ancora non capisco come funziona. Qualcuno potrebbe spiegarmi in un modo noob-friendly come funziona questa affermazione?Per ... in statement Objective-C
risposta
Vedere fast enumeration documentation.
Fondamentalmente avresti, di solito, un array, e puoi ottenere ogni elemento nell'array con un ciclo utile invece di usare NSEnumerator o una variabile di conteggio intero. Rende molto più pulito il tuo codice per richiedere ogni NSString nell'array piuttosto che assegnarlo a una variabile utilizzando objectAtIndex
per ogni passaggio del tuo loop.
Confronta:
for (NSString *string in myArray)
{
// do stuff...
}
A:
for (int i = 0; i < [myArray count]; i++)
{
NSString *string = [myArray objectAtIndex:i];
// Do stuff...
}
Oltre ad essere più pulito, è anche più veloce. C'è una ragione per cui questo è anche chiamato "enumerazione veloce". – zneak
Più veloce, più sicuro, più divertente ... OK, forse non l'ultimo. – jrturton
Grazie mille! Ma ancora non capisco quale sia la particolare funzione della parte "stringa". Se avessi altri oggetti nell'array oltre alle stringhe, come avrebbe funzionato? Continuerebbe ad enumerare attraverso tutti gli oggetti o salterà cose che non sono una stringa? –
- 1. Implementare protocollo ObjectiveC in rapida
- 2. SQL - CASE STATEMENT - WHEN statement AND statement
- 3. ObjectiveC blocca l'equivalente Java
- 4. Differenza tra NSLog e printf per ObjectiveC
- 5. Come dividere newline da NSString in ObjectiveC
- 6. prepared statement in VB.NET
- 7. If statement in C++
- 8. Memory Barrier per lock statement
- 9. statement statement con due variabili alla volta
- 10. switch statement in C/Objective
- 11. SELECT INTO statement in sqlite
- 12. Assistente "if statement" condizionale per Handlebars.js
- 13. Non capisco "#define per if-statement"
- 14. Come implementare il bridging senza pedaggio in ObjectiveC/C?
- 15. Posso inserire un ObjectiveC @selector in un NSDictionary?
- 16. C# lock statement performance
- 17. Weird for loop statement
- 18. C# using statement
- 19. DB2 CASE Statement
- 20. IF statement non funziona
- 21. Java Switch Statement
- 22. using statement with connection.open
- 23. Jinja2 If Statement
- 24. DBNull if statement
- 25. Mysqli insert statement
- 26. Utilizzo di "||" in switch statement in java
- 27. sqlplus print running statement
- 28. Need Help- Switch statement
- 29. Resharper Auto Complete Statement
- 30. fortran SAVE statement
Vuoi dire che dietro le quinte, o come lo si utilizza? –
Puoi trovare lotti se cerchi "l'obiettivo di enumerazione veloce c" – progrmr