android工程师开发IOS oc浅析(21)之NSRange

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_34476727/article/details/80512617

NSRange顾名思义Range肯定是一个范围,那到底它是个什么东西呢,我们可以按住command键点NSRange,点进去看,会发现,NSRange是一个结构体,其中包括了location(位置)和length(长度)两项,他们都是NSUInteger类型。而NSUInteger类型的定义如下:

NSRange的定义

typedef struct _NSRange  
{  
   NSUInteger location;  
   NSUInteger length;  
} NSRange; 
NSRange用来表示事物的一个范围,通常是字符串里的字符范围或者数组里的元素范围  
NSRange2个成员  
NSUInteger location : 表示该范围的起始位置  
NSUInteger length : 表示该范围内的长度 

NSRange的创建

    1), NSRange range;  
    //通过结构体变量访问成员  
    range.location = 3;  
    range.length = 2;  

    2),//结构体变量整体赋值  
    range = (NSRange){5,3};  
    NSRange r2 = {4,5};  //最简单的  

    3),  
    NSRange r3 = {.location = 3,.length = 5};  

    4),OC中新增的(OC中建议使用这种)  
    //NSMakeRange函数的作用给 NSRange结构体变量赋值  
NSRange r4 = NSMakeRange(3, 3);  
NSString *str = NSStringFromRange(r4);//将一个结构体转化成字符串  

猜你喜欢

转载自blog.csdn.net/qq_34476727/article/details/80512617