黑马程序员-我的第十七篇学习日记:Foundation中的结构体和字符串
2014-04-08 20:33
375 查看
----------------------
ASP.Net+Unity开发、.Net培训、期待与您交流! ----------------------
Foundation提供的一些基本对象,这些对象包括数字,字符串和组合,以及数组、字典和集合形式使用的成组对象
一.结构体
NSRange:表示范围(location length)
如:@"I love oc"的love范围
NSRange r3 = NAMakeRange(2,4) // 掌握这个
程序:
#import <Foundation/Foundation.h>
int main()
{
NSString *str = @"i love oc";
NSRange rang = [str rangeOfSring: @"love"]; //查找某个字符串在str的范围
NSLog(@"位置= %ld , 长度 = %ld" ,rang .location,rang.length );
return 0;
}
程序运行的
4000
结果是:位置 =2,长度是 = 4
CGPoint 等价于NSPiont ,都表示平面中的点(x,y)
常用用法:CGPoint p1 = NSMakePoint(100,20);
NSPoint p2= CGPointMake(20,20);
CGSize 等价于NSSize,都表示存储长度和宽度
常用用法:CGSize p3 = NSMakeSize(50,100);
NSSize p4 = CGSizeMake(100,200);
NSRect 等价于 CGRect 表示(CGPoint ,CGSize )就是(x , y ,长度,宽度)
将结构体转为字符串输出:
NSString str1 = NSStringFromPiont(p1);
NSLog(@"%@" , str1);
比较两个点是否相同(x,y):
BOOL b = CGPiontEqualToPoint(CGPiontMake(10,10) ,CGPiontMake(10,10) );
判断点在不在CGRect范围:
BOOL b1 = CGRectContainsPoint(CGRectMake(100,50,30,50),CGPiontMake(10,10));
二.字符串
字符串创建:
1.NSString (不可变)
NSString s1 = @"jack";
NSString s2 =[ [NSString alloc] initWithFormat: @"age is %d" , 10 ];
NSString s3 = [[NSString alloc] initWithUTF8String :"jack"]; //将c字符串转为oc字符串
const char *cs = [s3 UTF8String ]; //oc字符串转为c字符串
2.NSMutableString(可变)
NSMutableString s2 =[ [NSMutableString
alloc] initWithFormat: @"age is %d" , 10 ];
[s2 appendString:@"11 12"] // 拼接内容到s2的后面
NSRange rang = [str rangeOfSring: @"is"]; //查找is在s2的范围
[s2 deleteCharactersInRange: rang]
//删除is
----------------------
ASP.Net+Unity开发、.Net培训、期待与您交流! ----------------------
ASP.Net+Unity开发、.Net培训、期待与您交流! ----------------------
Foundation提供的一些基本对象,这些对象包括数字,字符串和组合,以及数组、字典和集合形式使用的成组对象
一.结构体
NSRange:表示范围(location length)
如:@"I love oc"的love范围
NSRange r3 = NAMakeRange(2,4) // 掌握这个
程序:
#import <Foundation/Foundation.h>
int main()
{
NSString *str = @"i love oc";
NSRange rang = [str rangeOfSring: @"love"]; //查找某个字符串在str的范围
NSLog(@"位置= %ld , 长度 = %ld" ,rang .location,rang.length );
return 0;
}
程序运行的
4000
结果是:位置 =2,长度是 = 4
CGPoint 等价于NSPiont ,都表示平面中的点(x,y)
常用用法:CGPoint p1 = NSMakePoint(100,20);
NSPoint p2= CGPointMake(20,20);
CGSize 等价于NSSize,都表示存储长度和宽度
常用用法:CGSize p3 = NSMakeSize(50,100);
NSSize p4 = CGSizeMake(100,200);
NSRect 等价于 CGRect 表示(CGPoint ,CGSize )就是(x , y ,长度,宽度)
将结构体转为字符串输出:
NSString str1 = NSStringFromPiont(p1);
NSLog(@"%@" , str1);
比较两个点是否相同(x,y):
BOOL b = CGPiontEqualToPoint(CGPiontMake(10,10) ,CGPiontMake(10,10) );
判断点在不在CGRect范围:
BOOL b1 = CGRectContainsPoint(CGRectMake(100,50,30,50),CGPiontMake(10,10));
二.字符串
字符串创建:
1.NSString (不可变)
NSString s1 = @"jack";
NSString s2 =[ [NSString alloc] initWithFormat: @"age is %d" , 10 ];
NSString s3 = [[NSString alloc] initWithUTF8String :"jack"]; //将c字符串转为oc字符串
const char *cs = [s3 UTF8String ]; //oc字符串转为c字符串
2.NSMutableString(可变)
NSMutableString s2 =[ [NSMutableString
alloc] initWithFormat: @"age is %d" , 10 ];
[s2 appendString:@"11 12"] // 拼接内容到s2的后面
NSRange rang = [str rangeOfSring: @"is"]; //查找is在s2的范围
[s2 deleteCharactersInRange: rang]
//删除is
----------------------
ASP.Net+Unity开发、.Net培训、期待与您交流! ----------------------