OC基础 可变数组与不可变数组的使用
OC基础 可变数组与不可变数组的使用
1.不可变数组
1.1不可变数组的创建
//实例方法
NSArray *array = [[NSArray alloc] initWithObjects:@"",@"",@"", nil];
NSLog(@"%@",array);
//类方法
NSArray *array1 = [NSArray arrayWithObjects:@"",@"",@"", nil]; //实例方法
NSArray *array2 = [[NSArray alloc] initWithArray:array];
NSLog(@"%@",array2);
NSArray *array3 = [NSArray arrayWithArray:array2];
1.2不可变数组的常用操作
//获取元素的个数
NSInteger count = [array count];
//获取数组某一个位置的元素
NSString *str = [array objectAtIndex:];
//获取某个元素在数组里面的索引(位置)
NSInteger index = [array indexOfObject:@""];
NSLog(@"%ld",index); //判断数组中是否包含某个元素
BOOL b = [array containsObject:@""];
//获取数组的最后一个元素
NSString *str2 = [array lastObject];
//以“-”将数组元素拼接成字符串
NSString *str3 = [array componentsJoinedByString:@"-"]; //数组的的遍历
for(int i = ;i<[array count];i++)
{
NSString *str = [array objectAtIndex:i];
NSLog(@"%@",str);
}
//for in
for(NSString *str in array)
{
NSLog(@"%@",str);
} //数组的嵌套
NSArray *array4 = [NSArray arrayWithObjects:array,array1,array2,array3, nil];
NSLog(@"%@",array4); //嵌套数组的遍历
//NSArray *array = [[NSArray alloc] initWithObjects:@"1",@"2",@"3", nil];
for(NSArray *arr in array4)
{
for(NSString *str in arr)
{
NSLog(@"%@",str);
}
}
2.可变数组
2.1可变数组的创建
//可变数组的创建
NSMutableArray *muArr = [[NSMutableArray alloc] initWithObjects:@"",@"",@"", nil];
NSMutableArray *muArr1 = [[NSMutableArray alloc] initWithArray:muArr];
NSMutableArray *muArr2 = [NSMutableArray array];
2.2可变数组的常用操作
//可变数组添加元素
//追加一个元素
[muArr addObject:@""];
//追加一组元素
[muArr addObjectsFromArray:muArr1];
NSLog(@"%@",muArr);
//在指定位置插入元素
[muArr insertObject:@"" atIndex:]; //可变数组删除元素
//删除最后一个元素
[muArr removeLastObject];
//删除指定位置的元素
[muArr removeObjectAtIndex:];
NSLog(@"%@",muArr);
//删除指定元素
[muArr removeObject:@""];
NSLog(@"%@",muArr);
//删除所有元素
[muArr removeAllObjects];
NSLog(@"%@",muArr); //数组置空
//muArr = nil;
//NSLog(@"%@",muArr); [muArr addObjectsFromArray:muArr1];
//@"1",@"2",@"3"
//删除指定范围内的指定元素
[muArr removeObject:@"" inRange:NSMakeRange(, )];
//根据指定的数组来删除元素
NSArray *array = [NSArray arrayWithObjects:@"",@"", nil];
[muArr removeObjectsInArray:array];
NSLog(@"%@",muArr);
//删除指定范围内的所有元素
[muArr removeObjectsInRange:NSMakeRange(, )]; //可变字符串的修改
[muArr setArray:array];
NSLog(@"%@",muArr); //替换某个位置的元素
[muArr replaceObjectAtIndex: withObject:@""];
//交换2个元素的位置
[muArr exchangeObjectAtIndex: withObjectAtIndex:];
NSMutableArray *muArray = [[NSMutableArray alloc] initWithObjects:@"联通3GNET",@"移动3GCMNET",@"电信4GCTLTE",@"电信3GCTNET",@"联通4GWONET", nil];
[muArray sortUsingSelector:@selector(compare:)];
NSLog(@"%@",muArray);
2.3简单的创建数组
NSArray *array = @[@"",@"",@""];
NSLog(@"array = %@",array);
OC基础 可变数组与不可变数组的使用的更多相关文章
- Java基础语法04面向对象上-类-属性-方法-可变参数-重载-递归-对象数组
类 面向对象是一种思想,一般指将事务的属性与方法抽出总结为模板(类/class),处理事务时通过类创建/new出对象由对象的功能/方法去完成所要计算处理的事情. 面向过程:POP:以过程,步骤为主,考 ...
- OC基础 可变字典与不可变字典的使用
OC基础 可变字典与不可变字典的使用 1.不可变字典 1.1创建不可变字典 //创建字典 //注意: //1,元素个数是偶数 //2,每两个元素是一个键值对 //3,值在前,键在后 NSDiction ...
- OC基础:数组.字典.集 分类: ios学习 OC 2015-06-18 18:58 47人阅读 评论(0) 收藏
==============NSArray(不可变数组)=========== NSArray,继承自NSObject 用来管理(储存)一些有序的对象,不可变数组. 创建一个空数组 NSArray ...
- 【转】不可变数组NSArray与可变数组NSMutableArray
原文网址:http://www.jianshu.com/p/1ad327f56d1d 不可变数组NSArray //创建一个空数组 NSArray *array = [NSArray array]; ...
- oc基础 不可变字符串的创建和使用
oc基础 不可变字符串的创建和使用 简介:下面都是字符串基本用法. 1.字符串的创建 //创建oc常量字符串 NSString *str=@"hello world!"; NSL ...
- Chapter5_初始化与清理_数组初始化与可变参数列表
一.数组初始化 数组是相同类型的,用一个标识符名称封装到一起的一个对象序列或基本类型数据序列.编译器是不允许指定数组的长度的,当使用语句int[] a时,拥有的只是一个符号名,即一个数组的引用,并不拥 ...
- scala (4) 可变数组和不可变数组
在scala中数组分为不可变长数组(在immutable包下)和可变长数组(在mutable包下) 不可变长数组指的是长度不可变,但是数组中角标对应的元素的值是可变的 可变数组指的是长度和数组中角标对 ...
- Java语言程序设计(基础篇) 第七章 一维数组
第七章 一维数组 7.2 数组的基础知识 1.一旦数组被创建,它的大小是固定的.使用一个数组引用变量,通过下标来访问数组中的元素. 2.数组是用来存储数据的集合,但是,通常我们会发现把数组看作一个存储 ...
- Python基础(list和tuple)可变集合和‘不可变’集合
list Python内置的一种数据类型是列表:list.list是一种有序的集合,可以随时添加和删除其中的元素. 比如,列出班里所有同学的名字,就可以用一个list表示: >>> ...
随机推荐
- polygonZM---> poliygon
ArcToolbox > Conversion Tools > To Shapefile > Feature Class To Shapefile (multiple) Clic ...
- Mysql创建函数出错
目前在项目中,执行创建mysql的函数出错, mysql 创建函数出错信息如下: Error Code: 1227. Access denied; you need (at least one of) ...
- php基础之一
php基础:1.php语言标记:<?php ?>2.输出语句:echo 'Hello','Hi'; //可输出多个字符串 print 'World'; // ...
- 使用PHP解压文件Unzip
这是一个非常方便的PHP函数从.zip文件解压缩文件.它有两个参数:第一个是压缩文件的路径和第二 function unzip_file($file, $destination) { // creat ...
- 自律训练法 John Sehorz
自律训练法,系1932年由德国精神医学医师John Sehorz所创立.他研究人们在催眠催眠状态下,所呈现的生理状态,如:沉重与温暖感.. ,因而,John Sehorz改以「逆向操作」之方式,由自我 ...
- 自定义 select 下拉菜单
.selectBeautifyMainStyle{ color: #9fa0a0; font-size: 14px; font-family: "alegreya_sansthin" ...
- 创建C#DLL
1. 创建classlibrary 2.编写一个COM接口和一个COM类 [Guid("DBE0E8C4-1C61-41f3-B6A4-4E2F353D3D05")] public ...
- ios如何判断键盘是否已经显示
ios如何判断键盘是否已经显示 在群里看到有人问:ios如何判断键盘已经显示在界面上. 其实这个解决很简单: 写一个单例来管理键盘的状态. 这个单例在初始化方法init种监听2个事件,分别是 UI ...
- Effective Java实作Comparator - 就是爱Java
如果集合或数组内的对象,有1个以上不同的排序逻辑时,那该如何处理呢?尤其是当已经实现了Comparable,又不能变动原本的逻辑时,Mix会采用Comparator来处理. 阅读全文>>
- cf D. Valera and Fools
http://codeforces.com/contest/369/problem/D 标号最小的两个人会有四种状态:a活b活,a死b活,a活b死,a死b死:按照这四种状态dfs就可以求出最后的数量. ...