【发布时间】:2010-01-09 02:12:26
【问题描述】:
我有以下方法应该创建一个 20 个字符的 ID(有时带有前缀)并返回 ID。
它似乎在启动时重置,每次我使用它都会创建相同的连续数字。
+(NSString *)createUniqueIdentifier:(NSString *)withPrefix {
NSString *outstring = nil;
if (withPrefix!=nil && ![withPrefix isEqualToString:@""]) {
outstring = [withPrefix stringByAppendingString:@"-"];
} else {
outstring = @"";
}
NSInteger ii;
NSString *allletters = @"ABCDEFGHIJKLMNOPQRSTUVWXYZ";
for (ii=0; ii<20; ii++) {
outstring = [outstring stringByAppendingString:[allletters substringWithRange:[allletters rangeOfComposedCharacterSequenceAtIndex:random()%[allletters length]]]];
}
return outstring;
}
我假设这与random() 有关,但我不知道还能使用什么。我想我什至从 Stack Overflow 那里得到了这个建议。
感谢您的帮助!
【问题讨论】:
标签: iphone objective-c random