2010-02-09 182 views
2

如何完成這項工作?簡單數組循環問題Objective-C

numbers = [[NSMutableArray alloc] initWithObjects: ({int x = 0; while (x <= 60) { return x; x++; } })]; 

謝謝:)

+5

哈!你是一個Javascript/Ruby/Scheme/ML程序員嗎? –

+0

是的:) 嘿嘿,習慣於其他方式做事情,Objective-C對我來說是不尋常的。 :P – Emil

回答

9
NSMutableArray * array = [[NSMutableArray alloc] init]; 

for (int i = 0; i <= 60; ++i) { 
    [array addObject:[NSNumber numberWithInt:i]]; 
} 
+0

謝謝:) - – Emil

2
int myStrangeNumberOfItems = 61; 

NSMutableArray * numbers = [[NSMutableArray alloc] initWithCapacity: myStrangeNumberOfItems]; 
for (int i = 0; i < myStrangeNumberOfItems; i++) { 
    [numbers addObject:[NSNumber numberWithInt:i]]; 
} 
+0

Off-by-one錯誤。 –

+2

這是完全不可接受的..它可以使飛船堅果 – Anurag

+0

固定。 ;)如果你不需要,永遠不要循環到<=。 –

2

首先,一個NSArray只能容納對象,而不是原語。您可以像這樣在for循環中添加對象。

NSMutableAray * numbers = [[NSMutableArray alloc] init]; 
for (int x = 0; x <= 60; x++) 
    [numbers addObject:[NSNumber numberForInt:x]];