OC-Foundation框架(1)

通过MJ老师的视频对Foundation有了初步的认知,下面是通过教学视频写下的一些的基本方法
Foundation框架中包含了很多开发中常用的数据类型:结构体、枚举、类

Foundation框架中常用的类有:

1NSString——字符串
2NSArray——有序数组
3NSNumber——数字
4NSDate——日期
5)NSData——数据
6NSDictionary——字典
7)NSSet——无序数组

这些类都是不可变的,可变的功能由它们的子类来实现

一、Foundation中常用的结构体

1NSRange (location,length)
2)NSPoint\CGPoint
3)NSSize\CGSize 
4)NSRect\CGRect 

···········NSPoint等价于CGPoint ,NSSize等价于CGSize, NSRect等价于CGRect···········

1、NSRange的常用使用方法

创建:
NSRange r = NSMakeRange(1,1);

使用:
NSString *str = @"i love oc";
//查找某个字符串在Str中的范围
 //如果找不到length = 0 ,location = -1.
NSRange range = [str rangeOfString:@"ve o"];
NSLog(@"loc = %ld,length=%ld",range.location,range.length);

2、NSPoint/CGPiont 的常见使用方法

创建:
CGPoint p1 = CGPointMake(10,10);//常用
CGPoint p2 = CGMakePoint(10,10);
使用方法:
//将CGPoint 转换为 NSString 
NSString *str = NSStringFromPoint(p1);
//创建出一个坐标为0,0 的点
CGPointZero

3、 NSSize /CGSize 的常见使用方法

创建:
CGSize p3 = CGSizeMake (10,10);//常用
CGSize p4 = CGMakeSize (10,10);
使用方法:
//将CGSize 转换为 NSString 
NSString *str = NSStringFromSize(p3);
//创建宽高为0,0 
CGPointZero

4、NSRect/CGRect 的常见使用方法

创建:
CGRect p5= CGRectMake(p1 ,p3);
CGRect p6 = CGMakeRect(0,0,100,20);
CGRect p7 = {{0,0},{100,90}};
使用方法:
//将CGRect 转换为 NSString 
NSString *str = NSStringFromRect(p5);
//创建点坐标和宽高都为零的矩形
CGRectZero

结构体中常用的高级用法
使用这些方法需要包含CoreGraphics 这个框架
//比较两个点是否相同 (方法返回BOOL 类型)
bool*b2=CGPointEqualToPoint(CGPointMake(10,10),CGPointMake(10,10));
// 判断一个点是否存在Rect 里面
bool*b3=CGRectcontainsPoint(CGRectMake(50,40,100,55,),CGPointMake(70,90));

二 、 NSString 和 NSMutableString的常见方法

1NSString 是不可变的
创建:
1NSString *s = @"jam";
2 ) NSString *s1 = [[NSString alloc] initWithString:@"jam"];
3 ) NSString *s2 = [[NSString alloc] initWithFormat:@"age is %d",10];

使用方法
//O字符串-->OC字符串
NSString *s3 = [[NSString alloc] initWithUTF8string:"jack"];

//OC字符串-->C字符串
Const Char *c = [s3 UTF8string];

//NSUTF8StringEncoding 用到中文就可以用这种编码
//把本地的一些资源输入到 NSString *s4中
NSString*s4=
[[NSStringalloc]initWithContentsOfFile:@"/Users/apple/Desktop/1.txt" encoding:NSUTF8StringENcoding error:nil];
//与之对应的类方法
NSString*s4=
[NSStringstringWithContentsOfFile:@"/Users/apple/Desktop/1.txt" encoding:NSUTF8StringENcoding error:nil]


//字符串的导出
[@"jack\njack" writeToFile:@"/Users/apple/Desktop/1.txt" atomically:YES encoding:NSUTF8StringEncoding error: nil];

(2NSMutableString 是可变的字符串
//创建可变字符串
NSMutableString *s1 = [NSMutableString  stringWithFormat:@"age is 10"];

//拼接内容到S1的后面(没有创建新字符串)
[s1 appendString:@"12,13"];

//字符串中的删除
1)获取字符串的范围
NSRange range = [s1 rangeOfString:@"is"];
2)删除 字符串
[s1 deleteCharactersInRange:range]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值