标签:
第一种:结构体
1》范围
NSRange等价于CGRange
typedef struct _NSRange
{
unsigned int location;
unsigned int length;
} NSRange;
使用较多的是CGRangeMake()方法;
2》几何数据
struct CGPoint
{
float x;
float y;
};
struct CGSize
{
float width;
float height;
};
struct CGRect
{
CGPoint origin;
CGSize size;
};
使用较多的是CGPointMake(), CGSizeMake(), CGRectMake()等方法。
第二种:类
1》NSString类
字符串创建方法:
1.1》NSString *str = @"hello";
1.2》NSString *str = [NSString stringWithFoemat:@"hello%d", 10];
1.3》从外部文件读取,转换C语言字符串,等一些方法
字符串比较:
if([str1 isEqualToString:str2])
{
NSLog(@"equal");
}
if([str1 == str2])
{
NSLog(@"equal");
}
注第一种比较的是数值,第二种比较的是对象。
2》可变字符串NSMutableString
想java中的一样NSString有其子类为NSMutableString类。
NSMutablestring *str = [NSMutableString stringWithCapacity:50];
[str appendString:@"Hello world"]; //增加字符串
[str appendFormat:@"huma %d", 20];
还有删除字符串的方法为deleteCharactersInRange:(CGRange);
第三种集合(只能存取OC对象,不能存放基本的数据类型,也不可以存入空值,但是可以把基本的数据类型打包成OC对象以后存进集合,)
1》NSArray(有顺序)
创建方式:NSArray *array = @[@"one", @"two", @"three" ];
2》NSArray的子类NSMutableArray
创建 [NSMutableArray array]
添加[array addObject:@"hellio"];
删除[array removeObjectAtIndex:1];
1-2关于数组的遍历:
1》通过索引
2》使用NSEnumerator枚举
NSEnumerator *enumerator = [array objectEnumerator];
while (id thing = [enumerator nextObject])
{
NSLog(@"%@" , thing);
}
3》使用快速枚举
for(NSString *str in arry)
{
NSLog(@"%@", str);
}
4》使用最新代码块
3》NSSet和NSMutableSet(无顺序)
4》NSDictionary和NSMutableDictionary(键值对)
创建方式:
NSDictionary *dict = @{@"feifeiteng":@(1), @"peggy";@(2)}; @1是把基本数据类型转为OC对象
NSMutableDictionary *dict = {NSMutableDictionary dictionary};
[dict setObject:@"hello" forKey:@"1"]; //添加
[dict removeObjecetForKey:@"1"]; //移除
另一种添加方式
image1[@"key"] = @"biaoqingdi";
image1[@"desc"] = @"什么表情在他面前都弱爆了!";
第四种:数值(OC语言不支持自动装箱 )
1》NSNumber
number = @123; //装箱,把123变为OC对象,这样就能存入集合中了(java支持自动装箱与拆箱功能)。
2》NSValue
将任何类型的基本数据(包括结构体,枚举)转为OC对象
标签:
原文地址:http://blog.csdn.net/ttf1993/article/details/44309435