黑马程序员-------Foundation框架 NSRange

——Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ——-

Foundation框架是由许多类、方法、函数、文档按照一定的逻辑组织起来的集合,使编程变的更容易清晰。在Foundation学习的过程中,主要对结构体、集合类加以了解。

一、结构体

1、NSRange

NSRange内部包含两个属性,Location与Length。

NSRange(location,length)

定义一个英文句子”i love you”,使用NSRange求出love的NSRange属性。

NSString *str = @”i love you”;

NSRange r = NSMakeRange(2,4);

//还可以使用NSRange r = {2,4};

也等价于NSRange r = {.location = 2, .length = 4};

//此处的点因为是在结构体中,所以并不是点语法,而是访问成员变量。

NSRange r = [str rangeOfRange:@”love”]; // 求love在i love you的位置。

如果要查找的字符串找不到,length默认返回0,location默认返回-1。

2、NSPoint

NSPoint内部包含double x,double y两个属性。

NSPoint(x,y)

NSPoint等价于CGPoint,也等价于 struct CGPoint。

NSPoint p1 = NSPointMake(10,20);也可以写为

NSPoint p1 = CGMakePoint(10,20);

3、NSSize

NSSize(width,height)

NSSize s = NSMakeSize(10,20);等价于

NSSize s = CGSizeMake(10,20);也等价于

CGSize s = NSMakeSize(10,20);

4、NSRect

NSRect内部包含了NSSize与NSPoint两个属性。

CGRect(CGPoint,CGSize)—>(x,y,width,height);

CGRect r = CGRectMake(0,0,10,10);

CGRect r = {CGPointZero, CGSizeMake(10,10)};

把结构体转换成字符串方便打印

NSString *str = NSStringFrommPoint(p1); //(10,20)

NSString *str1 = NSStringFromSeze(s); //(10,20)

NSString *str2 = NSStringFromRect(r); // {{0,0},{10,10}};

返回值Bool类型

CGPointEqualToPoint((),());

//某点是否与某点重叠

CGSizeEqualToSize((),());

// 某尺寸是否与某尺寸相同

CGRectContainPoint(CGRectMake(),CGPointMake());

//point是否包含于rect

——Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ——-

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值