如何解决如何用相同的对象NSString填充整个 NSMutableArray
我正在尝试这个,但看起来不对,有什么选择吗?谢谢
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
所以你可以通过重复一个对象来构建一个数组,比如:
NSArray * items = [NSArray arrayByRepeatingObject:@"test" times:8];
注意:如果您想要一个可变版本,只需要求一个 mutableCopy
:
NSMutableArray * mutableItems = items.mutableCopy;
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。