Objective-c使用CharacterAtIndex

时间:2012-06-17 03:58:45

标签: objective-c nsstring indexing character

我想在Objective-C中使用characterAtIndex来比较某个位置的角色和一个角色(例如'v')。问题是characterAtIndex似乎发送了一个int而不是一个字符。我试着做这样的事情:

if ([string characterAtIndex:i] = @"v")

或者:

if (string[[string characterAtIndex:i]] .... )

我知道在某种语言中你可以直接进入字符串中的某个位置(如数组)来查看字符,但在Objective-C中似乎没有这种方式。

谢谢你的帮助!

2 个答案:

答案 0 :(得分:8)

characterAtIndex返回一个char,而不是NSString对象,所以改为做这种事情,

if ([a characterAtIndex:i] == 'v') 

答案 1 :(得分:4)

我更喜欢@ X-Slash的答案(+1),但为了彻底,我将展示如何使用OOP cocoa(即使用NSString而不是c-strings)来完成此操作。

if([[a substringWithRange:(NSRange){0,1}] isEqualToString:@"v"]) { ...

{0,1}是第一个字符,{1,1}是第二个字符