我需要一个Nsstring等于另一个字符串连接自身给定的次数。
为了更好的解释,考虑下面的python示例:
>> original = "abc""abc">> times = 22>> result = original * times"abcabc"
任何提示?
编辑:
我打算发布一个类似于Mike McMaster’s answer的解决方案,看看这个实现从Omniframeworks:
// returns a string consisting of 'aLenght' spaces+ (Nsstring *)spacesOfLength:(unsigned int)aLength;{static NSMutableString *spaces = nil;static NSLock *spacesLock;static unsigned int spacesLength;if (!spaces) {spaces = [@" " mutablecopy];spacesLength = [spaces length]; spacesLock = [[NSLock alloc] init];}if (spacesLength < aLength) { [spacesLock lock]; while (spacesLength < aLength) { [spaces appendString:spaces]; spacesLength += spacesLength; } [spacesLock unlock];}return [spaces substringToIndex:aLength];}
从文件中再现的代码:
Frameworks/OmniFoundation/OpenStepExtensions.subproj/Nsstring-OFExtensions.m
在OpenExtensions框架从Omni Frameworks由The Omni Group。
解决方法 有一个方法叫stringBypaddingTolength:withString:startingAtIndex ::[@"" stringBypaddingTolength:100 withString: @"abc" startingAtIndex:0]
注意,如果你想要3 abc的,比使用9(3 * [@“abc”长度])或创建类别像这样:
@interface Nsstring (Repeat)- (Nsstring *)repeatTimes:(NSUInteger)times;@end@implementation Nsstring (Repeat)- (Nsstring *)repeatTimes:(NSUInteger)times { return [@"" stringBypaddingTolength:times * [self length] withString:self startingAtIndex:0];}@end总结
以上是内存溢出为你收集整理的objective-c – 通过重复另一个字符串给定的次数创建NSString全部内容,希望文章能够帮你解决objective-c – 通过重复另一个字符串给定的次数创建NSString所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)