OC-集合类(数组)
来源:互联网 发布:源码商城 编辑:程序博客网 时间:2024/05/20 03:05
//oc 中的数组是一个大容器,数组可以存放不同类型的对象,且只能保存对象; //oc数组提供了两类数组 NSArray(不可变数组) NSMtableArray(可变数组) //可变与不可变的区别:可变就意味着对原有的对象进行增删改操作,而不可变就意味着数组一经创建就不能在修改; 1.数组(一)初始化数组(不可变数组) NSArray *array = [[NSArray alloc] initWithObjects:@"aaa", @"bbb", @"ccc", nil];//正常初始化一个数组NSArray *array1 = [[NSArray alloc] initWithArray:array];//根据一个数组初始化一个数组NSArray *array4 = [NSArray arrayWithObject:@"p"];//初始化一个元素NSArray *array5 = @[@"1", @"2", @"3"];//字面量创建数组(常用)
一些常用属性
1 获取数组的元素个数 NSLog(@"%lu", array5.count); 2.获取数组中的元素 // 1)给定位置获取元素 NSLog(@"%@", [array5 objectAtIndex:1]);// 2)第一个元素 NSLog(@"%@", [array5 firstObject]);// 3)最后一个元素 NSLog(@"%@", [array5 lastObject]);// 4 根据元素获取元素在数组中对应的索引(下标)// 在未找到的情况下返回随机的一个数 NSLog(@"%ld", [array5 indexOfObject:@"1"]);// 5 判断数组中是否包含某一个给定的对象 if ([array5 containsObject:@"1"]) { NSLog(@"存在"); } else { NSLog(@"不存在"); }//两个转换(重点) // 数组转字符串 NSArray *arr = @[@"1111", @"2222", @"3333"]; NSString *str = [arr componentsJoinedByString:@"$"]; // 字符串转数组 NSLog(@"%@", [str componentsSeparatedByString:@"$"]);(二) 可变数组(继承与不可变数组, 初始化方法相同) 1.初始化一个可变数组 1. 初始化方法 NSMutableArray *MutableArr = [[NSMutableArray alloc] initWithObjects:@"aa", @"ss", @"cc", nil]; 2.添加元素// 直接向后面追加对象 [MutableArr addObject:@"2"]; // 通过数组添加 [MutableArr addObjectsFromArray:array5]; 3.删除元素// 1)删除单个元素 [MutableArr removeObject:@"2"]; NSLog(@"%@", MutableArr);//只要有匹配对象就删除掉// 2)删除所有元素// [MutableArr removeAllObjects];// 6.插入元素 [MutableArr insertObject:@"qqq" atIndex:2];// ar insertObjects:<#(nonnull NSArray *)#> atIndexes:<#(nonnull NSIndexSet *)#>批量插入?// 7. 交换指定位置的两个元素[MutableArr exchangeObjectAtIndex:0 withObjectAtIndex:2];// 8. 替换元素[MutableArr replaceObjectAtIndex:0 withObject:@"www"];
阅读全文
0 0
- OC-集合类(数组)
- OC数组字典集合
- OC--数组、字典、集合
- OC-集合1(数组)
- OC中的数组、字典、集合
- OC - 第五章 集合 ( 数组、字典、集合 )
- ❀自我唠嗑OC-数组类,字典类,集合类
- OC中的容器类及其功能方法:数组,字典,集合
- oc集合类库
- C25_OC15-OC集合类
- OC-遍历集合类
- oc集合类
- OC - 集合类
- OC - Foundation集合类
- OC 数组对象的操作 方法集合
- OC的字符串 数组 字典 集合
- oc 数组,字典,集合 库方法练习
- OC总结-数组和集合
- 总结了一天的Mongodb常用命令
- 电脑断电重启后Android Studio出现异常,所有的类引入都报错
- 安卓开发中去除标题栏
- QT学习——文件操作
- 台湾大学林轩田机器学习技法课程学习笔记5 -- Kernel Logistic Regression
- OC-集合类(数组)
- JavaScript重构(三):JavaScript的测试
- Redis的基本数据类型
- JavaScript重构(二):JS的动态加载
- SSH简单项目实例(附下载)
- 背包问题解析
- JS-RegExp正则表达式的对象
- JavaScript重构(一):模块划分和命名空间
- Java.lang.StringBuilder常用类