我是第一次学习原生 iOS 开发,遇到了 struct NSRange。我来自 Java 背景,所以当您可以只使用属于NSString
类的一部分的子字符串方法时,我并没有真正看到使用范围结构的原因。使用范围结构与使用非范围NSString
子字符串方法相比有什么优势。
谢谢!
编辑:看起来我正在考虑子字符串方法:substringFromIndex:
和substringToIndex:
. 考虑到这些方法的不灵活性(即不能同时选择起点和终点)使得范围结构实例更加必要。虽然我猜你也可以嵌套这两种方法来达到相同的结果。
编辑 2:示例。
非范围子字符串方法示例:
NSString *str = @"This is a string.";
NSString *substr = [str substringToIndex:7];
NSString *substr2 = [str substringFromIndex:7];
范围子字符串方法示例:
NSString *substr3 = [str substringWithRange:NSMakeRange(5, 5)];