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 range;
range.location = 2;
range.length = 3;
输出:
NSLog(@"%lud,%lud",range.location,range.length);
NSRange rangInit = {2,3};
输出:
NSLog(@"%lud,%lud",rangeInit.location,rangeInit.length);
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 p;
p.x = 21;
p.y = 23;
NSPoint p = NSMakePoint(12,13);
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类型的变量的创建方法
```
NSRect rect;
NSPoint Origin = {33.0f,44,0f};
rect.origin = Origin;
NSSize size = {22.2f,33.3f};
rect.size = size;
NSRect rect = {22.2f,33.3f,45.4f,45,23f};
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,字符串的转化
char *cstr = "hello qingyun";
NSString *str3 = [[NSString alloc]initWithCString:cstrencoding:NSUTF8StringEncoding];
或者
NSString *str3 = [[NSString alloc] initWithUTF8String:cstr ];
NSString *str = @"hello world!";
const char *cstr = [str UTF8String];
或者
const char *cstr = [str cStringUsingEncoding:NSUTF8StringEncoding];
str = @"1234";
int a = [str intValue];
[str floatValue]
[str doubleValue]
3,NSString常用的方法
NSLog(@"%ld",[str length]);
NSLog(@"%c",[str characterAtIndex:?]);
NSLog(@"%@",[str substringToIndex:n]);
NSLog(@"%@",[str substringFromIndex:n]);
NSRange range = {4,4};
NSLog(@"%@",str substringWithRange:range);
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];
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];
[str appendString:@“123"];//在字符串末尾追加字符串
[str appendFormat:@"%@, oc语言, %i”,@"正在学习",1];
[str deleteCharactersInRange:NSMakeRange(0,2)];
[str setString:@"itcast"];
[str replaceCharactersInRange:NSMakeRange(3,1) withString:@"ios"];