Vol*_*ort 10 string objective-c
NSString *myStrings = @"abcdefghijklmnopqrstuvwxyz";
Run Code Online (Sandbox Code Playgroud)
我怎么能在Objective-C for循环中迭代每个字母(a,b,c,d,e等)?
pyt*_*ick 22
一种方法是使用简单的for循环:
for (NSInteger charIdx=0; charIdx<myStrings.length; charIdx++)
// Do something with character at index charIdx, for example:
NSLog(@"%C", [myStrings characterAtIndex:charIdx]);
Run Code Online (Sandbox Code Playgroud)
小智 6
我建议使用getCharacters:range:而不是.您可以使用一个对象调用获取原始unicode数组,并可以迭代结果.输出相同,但速度更快.
NSString *inputString = @"abcdefghijklmnopqrstuvwxyz";
NSUInteger length = inputString.length;
unichar buffer[length+1];
// do not use @selector(getCharacters:) it's unsafe
[inputString getCharacters:buffer range:NSMakeRange(0, length)];
for(int i = 0; i < length; i++)
{
NSLog(@"%C", buffer[i]);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14788 次 |
| 最近记录: |