您的位置:首页 > 其它

1.NSString,NSArray,NSDictionary的基本用法

2015-07-27 20:53 423 查看

1.NSString

NSString *string1 = @"字面量";//--->字符串常量
//创建一个空的字符串
NSString *string2 = [[NSString alloc] init];
NSString *string3 = [NSString string];
//快速创建一个字符串  常量区
NSString *string4 = [[NSString alloc] initWithString:@"abc"];
NSString *string5 = [NSString stringWithString:@"xyz"];
//创建一个格式化的字符串  堆区
NSString *string6 = [[NSString alloc] initWithFormat:@"整数:%d",10];
NSString *string7 = [NSString stringWithFormat:@"浮点数:%g",3.14];
//--->判断字符串内容是否相同
BOOL isEqual = [string4 isEqualTo:string5];
if (string4 == string5) {
NSLog(@"same point");//--->判断地址是否相同
}
//字符串比较大小{NSOrderedAscending = -1L, NSOrderedSame, NSOrderedDescending};
NSComparisonResult result = [string4 caseInsensitiveCompare:string5];
[string4 length];//--->求字符串长度
[string4 uppercaseString];//全部大写;lowercaseString(全小写);capitalizedString(首字母大写)
//--->字符串转换成基本数据类型
NSString *string8 = @"3.14";
float pi = [string8 floatValue];
//字符串转换成数组
NSString *string9 = @"abc bcd iOS";
NSArray *array = [string9 componentsSeparatedByString:@" "];
//截取字符串-->substringFromIndex;substringToIndex
[string9 substringWithRange:NSMakeRange(4, 3)];//--->bcd
//字符串拼接 str123--->abcxyz
NSString *str1 = [NSString stringWithFormat:@"%@%@",string4,string5];
NSString *str2 = [string4 stringByAppendingFormat:@"%@",string5];
NSString *str3 = [string4 stringByAppendingString:string5];
//查找字符串
NSString *link = @"abcdefg-yun-nihao";
NSRange range = [link rangeOfString:@"-yun-"];
NSLog(@"%@",NSStringFromRange(range));//--->{7, 5}

NSMutableString *str = [[NSMutableString alloc] initWithString:@"abc"];
[str insertString:@"...xyz" atIndex:3];//--->abc...xyz
[str replaceCharactersInRange:NSMakeRange(0, 3) withString:@"efg"];//--->efg...xyz
[str deleteCharactersInRange:NSMakeRange(0, 3)];//--->...xyz


2.NSArray

NSArray *ar = [NSArray array];//初始化一个空数组
NSArray *arr = @[@"123",@123,@"hello"];
NSArray *arr1 = [NSArray arrayWithObjects:@"123",@123,@"hello", nil];
NSMutableArray *arr2 = [NSMutableArray arrayWithObjects:@"123",@123,@"hello", nil];
NSLog(@"%d",[arr1 containsObject:@"123"]);//包含对象
//快速枚举:能快速的遍历数组等容器对象,对容器里面的每一个元素便利
//为了增加代码的可读性,尽量让forin前面的部分类型和数组里的元素类型相同
for (NSArray *temp in arr1) {
NSLog(@"%@",temp);
}


3.NSDictionary

//常见初始化方法
NSDictionary *di = [NSDictionary dictionary];
NSDictionary *dic = @{@"age":@"22",@"name":@"zhangsan"};//key-->value
NSDictionary *dic1 = [NSDictionary dictionaryWithObjectsAndKeys:@"22",@"age",@"zhangsan",@"name", nil];//value-->key
NSMutableDictionary *dic2 = [NSMutableDictionary dictionaryWithObjectsAndKeys:@"22",@"age",@"zhangsan",@"name", nil];

//1.key是唯一的且不能为空,但是value可以重复
//2.当key不存在时是进行键值对的添加,存在时是对value的修改(针对可变字典)
//3.setObject是字典自己的方法,setValues是KVC的方法,即使效果一样,但是对字典还是用setObject
[dic2 setObject:@"500235" forKey:@"id"];

NSLog(@"%@",[dic1 allValues]);//所有的值
NSLog(@"%@",dic1.allKeys);//所有的键

NSLog(@"%@",[dic1 objectForKey:@"name"]);//通过键取值
NSLog(@"%@",dic1[@"name"]);//dic[对应的key]-->语法糖

//遍历所有的values
for (int i = 0; i < dic1.count; i++) {
NSLog(@"%@",dic1.allValues[i]);
}

//forin的前部分是字典里的key
for (NSString *str in dic1) {
NSLog(@"%@",str);//所有key
NSLog(@"%@",dic1[str]);//所有value
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: