生成随机字符串,它包含alpha数字值。事情是我需要设置正好10个数字来存储在一个特定的字符串中,有时我得到10个数字,但大部分时间我得到4,5,7,甚至1个字符值:
这里是我的示例代码:
NSString *alphabet = @"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXZY0123456789";
NSMutableString *s = [NSMutableString stringWithCapacity:10];
for (NSUInteger i = 0; i < 10; i++) {
u_int32_t r = arc4random() % [alphabet length];
unichar c = [alphabet characterAtIndex:r];
[s appendFormat:@"%C", c];
NSLog(@"%@",s);
}
我的nslog: ÿ
YC
的yCD
yCDC
yCDCd
yCDCdP
yCDCdP1
yCDCdP1F
yCDCdP1Fg
yCDCdP1Fgq
答案 0 :(得分:1)
您已将NSLog
置于for
循环内。这可能会让你觉得这是错的。取
NSLog(@"%@",s);
离开循环。
答案 1 :(得分:1)
代码没有问题。
只是,将NSLog(@"%@",s);
放在for循环之外。