我可以在while循環中轉換此循環嗎?將「for ... in ... break」循環轉換爲「while」循環
int i=0;
for (NSDictionnary *crossArrayDictionnary in (NSArray *)mainArray) {
//some code...
i++;
if (i>=50) {
break;
}
}
感謝,
我可以在while循環中轉換此循環嗎?將「for ... in ... break」循環轉換爲「while」循環
int i=0;
for (NSDictionnary *crossArrayDictionnary in (NSArray *)mainArray) {
//some code...
i++;
if (i>=50) {
break;
}
}
感謝,
這應該做的伎倆:
NSInteger max, i = 0;
max = [mainArray count] < 50 ? [mainArray count] : 50;
while (i < max) {
NSDictionary *crossArrayDictionnary = [mainArray objectAtIndex:i];
// You code here.
i++;
}
正如rckoenes說,
微小變化。
NSInteger i = 0;
while (i < 50 && [itemsMutable cout] >= i) {
NSDictionary *crossArrayDictionnary = [itemsMutable objectAtIndex:i];
// You code here.
i++;
}
它更好地做手動計數而不是if,這會在每次循環時調用計數。 – rckoenes
NSEnumerator *enumerator = [mainArray objectEnumerator];
NSDictionary *crossArrayDictionnary = nil;
while ((crossArrayDictionnary = [enumerator nextObject])) {
//some code...
i++;
if (i>=50) {
break;
}
}
爲什麼呢?你仍然需要檢查兩個條件(數組長度和50)? – Thilo