黑马程序员——Foundation之结构体

------<a href="http://www.itheima.com" target="blank">Java培训、Android培训、iOS培训、.Net
培训</a>、期待与您交流! -------


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

一、结构体

1、NSRange

NSRange内部包含两个属性,LocationLength

NSRange(location,length)

 

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

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”]; // lovei love you的位置。

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

 

2、NSPoint

NSPoint内部包含double xdouble 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内部包含了NSSizeNSPoint两个属性。

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值