我是语法新手,所以这就是我需要帮助的地方。从概念上讲,我明白了。但是语法对我来说是陌生的。
问问题
2385 次
4 回答
9
这是一个简洁的方法:
- (char)getRandomChar {
return (char) (arc4random_uniform(26) + 'a');
}
这假设您想要 'a' 到 'z',没有任何带有变音符号的字母,例如 å、ä、á 等。
要将字符作为 NSString 返回:
- (NSString *)getRandomCharAsNString {
return [NSString stringWithFormat:@"%c", arc4random_uniform(26) + 'a'];
}
于 2012-08-21T17:25:04.440 回答
3
我将创建一个字符串“abcdefg ...”并在随机位置获取一个字符长的子字符串。
像这样:
NSString *letters = @"abcdefghijklmnopqrstuvwxyz";
NSInteger index = arc4random_uniform([letters length]);
NSString *randomLetter = [letters substringWithRange:NSMakeRange(index, 1)];
于 2012-08-21T17:11:24.897 回答
1
Objective-c 是 C 的超集,这意味着您可以使用有效的 C 代码。
-(char)getRandomChar
{
char test[] = {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'};
int r = arc4random() % 26;
NSLog(@"%c", test[r]);
return test[r];
}
于 2012-08-21T17:14:08.267 回答
-1
这看起来不错的样子
NSLog(@"%c",'a'+ rand() % 26);
于 2013-11-27T14:14:58.460 回答