您的位置:首页 > 其它

Foundation框架基础知识

2015-06-11 20:39 405 查看

1.常用数据类型:

(1).NSRrange 创建范围结构体

结构体:

typedef struct _NSRange{
NSUInteger location;
NSUInteger length;
}NSRange;


NSMakeRange函数:

NS_INLINE NSRange NSMakeRange(NSUIteger loc,NSUInteger len){
NSRange r;
r.location = loc;
r.length;
return r;
}#实例演示:
//NSRange类型的变量的创建方法。
//1.直接创建变量,然后根据结构体成员访问语法,分别每一个成员赋值
NSRange range;
range.location = 2;
range.length = 3;
输出:
NSLog(@"%lud,%lud",range.location,range.length);

//2.使用结构初始化语法,给变量赋值
NSRange rangInit = {2,3};
输出:
NSLog(@"%lud,%lud",rangeInit.location,rangeInit.length);

//3.使用Cocoa提供的函数来创建变量的值
NSRange rangeCocoa = NSMakeRange(2,3);
NSLog(@"%lud,%lud",rangeCocoa.location,rangeCocoa.length);


NSPoint :代表笛卡尔平面的坐标点(x,y)

结构体:

struct CGPoint{
CGFloat x;
CGFloat y;
}NSPoint;
NSMakePoit函数:
NS_INLINE NSPoint NSMakePoint(CGFloat x,CGFloat y){

NSPoint p;
p.x = x;
p.y = y;
return p;
}
CGPointMake函数:
CGPointMake(CGFloat x,CGFloat y){
CGPoint p;
p.x = x;
p.y = y;
return p;
}
实例演示:
//NSPoint主要是表示位置
//1.直接创建变量,然后根据结构体成员访问语法,分别给每一个成员赋值
NSPoint p;
p.x = 21;
p.y = 23;

//2.快速的创建点
NSPoint p = NSMakePoint(12,13);

//3.用CGPointMake创建点
NSPoint p;
p = CGPointMake(34,43);


NSSize :用来存储长度和宽度

结构体:

typedef struct _NSPoint{
float width;
float heigh;
}NSSIze;


NSRect :由点和大小复合而成的矩形数据类型

结构体:

typedef struct _NSRect{
NSPoint origin;
NSSize size;
}NSRect;
```
####NSRect类型的变量的创建方法
```
//1.直接创建变量
NSRect rect;
NSPoint Origin = {33.0f,44,0f};
rect.origin = Origin;//给rect传递NSPoint类型值
NSSize size = {22.2f,33.3f};
rect.size  = size;//给rect传NSSize类型值

//2.使用结构体初始化语法
NSRect rect = {22.2f,33.3f,45.4f,45,23f};

//3.使用cocoa提供的函数来创建变量的值
NSRect rectWithFun = NSMakeRect(22.2f,33.3f,45.4f,45,23f});


cocoa为这些数据类型创建了快捷函数

1 >NSMakePoint()

2 >NSMakeSize()

3 >NSMakeRect()

2.字符串:NSString NSMutableString的常见操作

NSString类:

1.创建字符串对象

NSString *str = @"hello world!”;//创建字符串常量

//创建一个空的字符串
NSString *str = [ [NSString alloc] init];
NSString *str = [NSString string];

//使用已有字符串来创建一个新的字符串对象
NSString *str1 = [[NSString alloc] initWithString:str];
NSString *str1 = [[NSString alloc] stringWithString:str];

//用格式化字符串初始化字符串对象
NSString *str2= [[NSString alloc] initWithFormat:@"%@, %i,%s",str,10,"abcd"];
NSString *str2= [[NSString alloc] stringWithFormat:@"%@, %i,%s”,str,10,"abcd"];


2,字符串的转化

//把c字符串转化为oc字符串对象
char *cstr = "hello qingyun";
NSString *str3 = [[NSString alloc]initWithCString:cstrencoding:NSUTF8StringEncoding];
或者
NSString *str3 = [[NSString alloc] initWithUTF8String:cstr ];

//把oc字符串转化为c字符串
NSString *str = @"hello world!";
const char *cstr = [str UTF8String];
或者
const char *cstr = [str cStringUsingEncoding:NSUTF8StringEncoding];

//把数字串转化为相应的数据类型
str = @"1234";
int a = [str intValue];
[str floatValue]//转化成float型
[str doubleValue]//转化成double型


3,NSString常用的方法

NSLog(@"%ld",[str length]);//求字符串的长度

NSLog(@"%c",[str characterAtIndex:?]);//?代表下标,注意不要越界。获取字符串中得字符

NSLog(@"%@",[str substringToIndex:n]);//获取指定长度的字符串,是从头开始截取到n-1下标的内容

NSLog(@"%@",[str substringFromIndex:n]);//从指定位置开始向后截取字符串,一直到结束

NSRange range = {4,4};//结构体初始化,其中第一个4指的位置,后一个是长度

NSLog(@"%@",str substringWithRange:range);//获取指定范围内的字符串,

//查找子串,找不到返回NSNotFound,找到返回loctation和length
NSRange range = [str rangeOfString:@“hello"];
if(range.location != NSNotFound)
{
NSLog(@"%ld %ld",range.location,range.length);
}

NSString *str1 = [str substringWithRange:NSMakeRange(4,4)];
//NSMakeRange可以生成结构体
NSString *str = @“www.itcast.com";

BOOL ret = [str hasPrefix:@"www"];//判断字符串是否以指定字符串开头
NSString *str = @“www.itcast.com";

BOOL ret`这里写代码片` = [str hasSuffix:@“.com"];//判断字符串是否以指定的字符串结尾

BOOL ret = [str1 isEqualTo:str2];//比较两个字符串是否相等,相等返回YES,不等返回NO

//两个字符串比较大小,str1大 返回1,相等返回0, 小于返回-1
NSComparisonResult result = [str1 compare:str2];

//不区分大小写比较大小
NSComparisonResult result = [str1 caseInsensitiveCompare:str2];

NSLog(@"%@",[str uppercaseString]);//将字符串中得所有小写字母转化为大写字符,不改变原来的字符串
NSLog(@"%@",[str lowercaseString]);//将字符串中得所有大写字母转化为小写字符,不改变原来的字符串
NSLog(@"%@",[str capitalizeString]);//将字符串中出现的第一个字母转化为大写,其余字母小写


二.NSMutableString类

提示:NSMutabaleString是可变字符串(动态增加或者减少),继承于NSString,可以使用NSString的所有方法。

1.初始化字符串

//将不可变的字符串转换为可变的字符串
NSMutableSting *str =[ [NSMutableString alloc] initWithString:@"hello"];

//容量只是一个参考值
NSMutableSting *str =[ [NSMutableString alloc] initWithCapacity:10];

2.常用方法
[str insertString:@"123" atIndex:1];//在指定下标(不要越界)位置插入NSString类型字符串

[str appendString:@“123"];//在字符串末尾追加字符串

[str appendFormat:@"%@, oc语言, %i”,@"正在学习",1];//在字符串末尾,格式化追加字符串

[str deleteCharactersInRange:NSMakeRange(0,2)];//从指定下标删除length个字符

[str setString:@"itcast"];//修改字符串亦称对该可变字符串赋值

[str replaceCharactersInRange:NSMakeRange(3,1) withString:@"ios"];
//将指定下标位置的length个字符替换为指定的字符串
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: