簡體   English   中英

如何用同一個對象(NSString)填充整個 NSMutableArray

[英]how can the whole NSMutableArray be filled with the same object(NSString)

我正在嘗試這個,但它看起來不對,有什么選擇嗎? 謝謝

NSMutableArray *copyy = [[NSMutableArray alloc] initWithCapacity:8];
for (int i = 1; i < copyy.count; i++) {
    NSString *str = @"test";
    [copyy addObject:[str copy][i]];
}

您可以在NSArray之上編寫一個簡單的類別,例如:

@interface NSArray(Repeating)
+ (NSArray*)arrayByRepeatingObject:(id)object times:(NSUInteger)t;
@end

@implementation NSArray(Repeating)
+ (NSArray*)arrayByRepeatingObject:(id)object times:(NSUInteger)t {
    id objects[t];
    for(NSUInteger i=0; i<t; ++i) objects[i] = object;
    return [NSArray arrayWithObjects:objects count:t];
}
@end

因此您可以通過重復 object 來構建數組,例如:

NSArray * items = [NSArray arrayByRepeatingObject:@"test" times:8];

注意:如果你想要一個可變版本,只需要一個mutableCopy

NSMutableArray * mutableItems = items.mutableCopy;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM