Object-C数组和字典
来源:互联网 发布:python 字符串求和 编辑:程序博客网 时间:2024/05/17 07:59
// 数组 (NSArray)
// 系统提供的数组类-- 类似于c语言中的数组
// OC中的数组是个大容器,可以存放不同类型的对象,且只能保存对象(基本数据类型不可存)
// OC数组提供两类数组 NSArray(不可变数组) NSMUatableArray (可变数组)
// 可变与不可变区别:
// 可变意味着对原有的对象进行曾删改操作,而不可变就意味着数组一经创建不能修改
// 1. 创建对象
#if 0
// 1). 初始化方法
NSArray *array = [[NSArray alloc] initWithObjects:@"aaa",@"bbb", @"ccc",nil];
NSLog(@"%@", array);
NSArray *array1 = [[NSArray alloc] initWithArray:array];
NSLog(@"%@", array1);
// 2). 便利方法
NSArray *arr = [[NSArray alloc] initWithObjects:@"sdfg",@"gfg", @"fsf",nil];
NSArray *arr1 = [NSArray arrayWithArray:arr];
NSArray *arr2 = [[NSArray alloc] initWithArray:arr1];
// 初始化一个元素
NSArray *arr3 = [NSArray arrayWithObject:@"123"];
NSArray *array3 = [NSArray arrayWithObjects:@"aa",@"bb", @"cc",nil];
NSLog(@"%@", array3);
NSArray *array4 = [NSArray arrayWithArray:array1];
NSLog(@"%@", array4);
// 3). 字面量(用于不可变得量)
NSArray *array6 = @[@"1",@"2", @"3"];
// 2. 获取数组元素个数
NSLog(@"%lu", array.count);
// 3. 获取数组中的元素
// 1). 给定位置获取元素
NSLog(@"%@", [array objectAtIndex:2]);
//6 NSLog(@"%@", [array objectAtIndexedSubscript:2]);
// 2). 第一个元素
NSLog(@"%@", array.firstObject);
// 3). 最后一个元素
NSLog(@"%@", [array lastObject]);
// 4. 根据元素获取元素所在数组中对应的索引(下标)
NSLog(@"%ld", [array indexOfObject:@"ccc"]);
// 5. 判断数组中是否包含某一个给定对象
NSLog(@"%d", [array containsObject:@"aaa"]);
// 6. NSArray与NSString的转换方法
// NSString->NSArray
NSString *string1 = @"www.asdfdsf.com";
NSArray *array5 = [string1 componentsSeparatedByString:@"."];
NSLog(@"%@", array5);
// NSArray -> NSString
NSString *string2 = [array5 componentsJoinedByString:@"."];
NSLog(@"%@", string2);
NSString *str4 = @"我喜欢你";
NSArray *arr4 = [str4 componentsSeparatedByString:@""];
NSLog(@"%@", arr4);
NSString *str5 = [arr4 componentsJoinedByString:@""];
NSLog(@"%@", str5);
#endif
// 可变字符数组
// 1. 初始化方法
NSMutableArray *array = [[NSMutableArrayalloc] initWithObjects:@"abc",@"def", nil];
NSLog(@"%@", array);
NSMutableArray *array1 = [[NSMutableArrayalloc] initWithArray:array];
NSLog(@"%@", array1);
// 2.便利构造器
NSMutableArray *array2 = [NSMutableArrayarrayWithObjects:@"123",@"456", nil];
NSMutableArray *array3 = [NSMutableArrayarrayWithArray:array2];
NSLog(@"%@", array3);
// 与父类相同初始化
// 4.添加元素
[array2 addObject:@"789"];//直接添加一个元素
NSLog(@"%@", array2);
[array1 addObjectsFromArray:array1];//添加数组
NSLog(@"%@", array1);
// 5.删除元素
[array removeObject:@"abc"];//删除指定元素
NSLog(@"%@", array);
[array removeAllObjects];//删除所有元素
NSLog(@"%@", array);
// 6. 插入元素
NSLog(@"%@", array1);
[array1 insertObject:@"bnm"atIndex:1];
NSLog(@"%@", array1);
// 7. 交换指定位置的两个元素
[array2 exchangeObjectAtIndex:0withObjectAtIndex:2];
NSLog(@"%@", array2);
// 8.替换元素
[array3 replaceObjectAtIndex:1withObject:@"333"];
NSLog(@"%@", array3);
// 练习题
#if 1
Person *p1 = [[Personalloc] initWithName:@"1"withAge:10];
Person *p2 = [[Personalloc] initWithName:@"2"withAge:11];
Person *p3 = [[Personalloc] initWithName:@"3"withAge:12];
// 创建小组
// 创建空数组
//NSMutableArray *group = [NSMutableArray array];
NSMutableArray *group = [NSMutableArrayarrayWithObjects:p1, p2, p3, nil];
// 添加一个成员
Person *p4 = [[Personalloc] initWithName:@"4"withAge:19];
[group addObject:p4];
NSLog(@"%@", group);
//
// [group removeObject:p1];
// [group removeObject:p2];
NSLog(@"%@", group);
- Object-C数组和字典
- Object-C 数组 字典 集合
- Object-C--->Swift之(五)数组和字典
- Object c的字符串,数组和字典的笔记
- [Object-c] Log(输出数组和字典的中文内容)
- Object C 字符串、数组、字典集合 NSString NSArray NSDictionary操作
- Object-C Foundation 框架汇总之-数组,字典,集合
- Object C Dictionary字典
- Object-C 字典
- Object-c之可变字典
- Object-C 中的可变数组和不可变数组
- Object-c 数组
- object c 数组初始化
- Object-c 数组总结
- Object-C(数组二)
- Object-C,数组NSArray
- Object-C之数组
- Object-C 数组
- 表单数据加密
- SpringMVC——注解类型(一)
- WebKit之WebRTC的研究
- WPF:Provide value on 'System.Windows.Baml2006.TypeConverterMarkupExtension'
- 右键bitlocker消失
- Object-C数组和字典
- python核心编程-正则表达式之-边界匹配
- 动物按姓名排名
- WebKit之WebRTC初步认识
- web项目技术选型
- A4设备不完美降级
- 对MATLAB读取同一路径下多个txt或mat文件方法探讨
- HTTP状态码
- JTextArea中添加了JScrollPane后不显示滚动条