使用NSRange rangeOfString

时间:2012-10-09 19:54:52

标签: objective-c cs193p

有人可以解释NSRange的位置和长度。 如果我在这种情况下使用它

NSRange range = [self.display.text rangeOfString:@"."];
if(range.location == NSNotFound){
self.display.text = [self.display.text stringByAppendingString:@"."];

该位置代表什么,有人可以解释此代码。另外,我在哪里可以找到有关属性的更多信息,例如位置>我在头文件中发现它作为NSUInteger,但它没有描述实际上的位置。

2 个答案:

答案 0 :(得分:2)

根据official doc

  

rangeofString用于查找并返回接收者中给定字符串第一次出现的范围。

     

原始字符串中第一次出现的索引将存储在 location NSRange属性中。如果没有发现,则该方法将返回NSNotFound

因此,您的代码会附加您正在测试的字符串'。'如果没有找到这个角色。

答案 1 :(得分:1)

location字段是NSRange的位置或索引 - 在您的情况下,它是字符串“。”的索引。在原始字符串中。 length字段是NSRange实现的范围的长度。

您还可以在reference文档中找到该定义。