博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Swift -- 数组
阅读量:7030 次
发布时间:2019-06-28

本文共 2560 字,大约阅读时间需要 8 分钟。

hot3.png

一:数组的定义

  OC :

有值数组NSArray *arr0 = @[@1, @2, @3];NSArray *arr1 = [NSArray arrayWithObjects:@1, @2, @3, nil];NSLog(@"%@", arr1);空数组NSArray *arr2 = @[];NSArray *arr3 = [NSArray array];NSLog(@"%@", arr3);不可变数组:NSArray可变数组:NSMutableArray

   Swift:

//空数组var arr5 = []var arr6 = [Int]()var arr7 = Array
()//有值数组var arr0 = [1, 2, 3]var arr1: Array = [1, 2, 3]var arr2: Array
 = [1, 2, 3]// 如果想明确表示数组中存放的是不同类型的数据,可以忽略不写 ,也可以使用Any关键字, 表示数组中可以存放不同类型的数据var arr10:Array = [1,"2h",11]var arr11:Array
 = [1, "lnj", 1.75]

二:数组的操作

1,获取数组长度

 

OC:

NSArray *arr = @[@1, @2, @3];
NSLog(@"%tu", arr.count);
swift:
var arr12 = [1, 2, 3]
print(arr12.count)

2,判断是否为空

OC:NSArray *arr = @[];NSLog(@"%d", arr.count != 0);swift:var arr13 = [1, 2, 3]print(arr13.isEmpty)

3,检索

OC:NSArray *arr = @[@1, @2, @3];NSLog(@"%@", arr[0]);swift:var arr14 = [1, 2, 3]print(arr14[0])          //下标从零开始

4,数组添加元素

OC:NSMutableArray *arr = [NSMutableArray arrayWithObjects:@1, @2, @3, nil];[arr addObject:@4];NSLog(@"%@", arr);swift:var arr15 = [1, 2, 3]arr15.append(4)    //或者arr15 +=[23]print(arr15)

5,插值,更新

OC:NSMutableArray *arr = [NSMutableArray arrayWithObjects:@1, @2, @3, nil];[arr insertObject:@4 atIndex:0];  //这样也可以 arr[0] = @8;NSLog(@"%@", arr);NSMutableArray *arr = [NSMutableArray arrayWithObjects:@1, @2, @3, nil];NSRange range = NSMakeRange(0, 2);swift:var arr17 = [1, 2, 3]arr17.insert(4, atIndex: 0);  // 利用下表也可以改变值 arr18[0] = 8print(arr18)var arr = [1, 2, 3]arr.replaceRange(1..<2, with: [99, 88, 77, 66])//在半区间[1..<2]用[12,3,3,1,2]代替print(arr)

6,删除

OC:NSMutableArray *arr = [NSMutableArray arrayWithObjects:@1, @2, @3, nil];[arr removeObject:@1];//根据元素删除NSMutableArray *arr = [NSMutableArray arrayWithObjects:@1, @2, @3, nil];[arr removeLastObject];//删除尾值NSMutableArray *arr = [NSMutableArray arrayWithObjects:@1, @2, @3, nil];[arr removeAllObjects];//删除所有元素NSMutableArray *arr = [NSMutableArray arrayWithObjects:@1, @2, @3, nil];[arr removeObjectsInRange:NSMakeRange(0, 2)];swift:var arr19 = [1, 2, 3]arr19.removeAtIndex(0)//根据下标删除var arr20 = [1, 2, 3]arr20.removeLast()var arr22 = [1, 2, 3]arr22.removeRange(Range(start: 1, end: 2))print(arr22)var arr23 = [1, 2, 3]arr23.removeRange(0...0)print(arr23)

7,遍历

OC:NSArray *arr = @[@1, @2, @3];for (int i = 0; i < arr.count; i++) {    NSLog(@"%@", arr[i]);}for (NSNumber *number in arr) {    NSLog(@"%@", number);}swift:var arr1 = [1, 2, 3]for var i = 0 ; i < arr1.count ; i++{    print(arr1[i])}for number in arr1{    print(number)}for i in 0..

转载于:https://my.oschina.net/ShangGuanchen/blog/620660

你可能感兴趣的文章
将python3.6软件的py文件打包成exe程序
查看>>
DataTable 排序
查看>>
大白话5分钟带你走进人工智能-第二十节逻辑回归和Softmax多分类问题(5)
查看>>
嵌入式系统在工业控制中的应用
查看>>
使用httpclient异步调用WebAPI接口
查看>>
c++ 类的对象与指针
查看>>
SSTI(模板注入)
查看>>
rbac models
查看>>
[2615]传纸条 sdutOJ
查看>>
类图标注的使用范例
查看>>
NumberFormat注解 DateTimeFormat
查看>>
[转载]PV操作简单理解
查看>>
Acm Dima and Lisa的题解
查看>>
深入浅出Tomcat系列
查看>>
从网页提取的关键字
查看>>
位运算符
查看>>
PHP str_replace() 和str_ireplace()函数
查看>>
什么是全栈工程师
查看>>
Html5新特性
查看>>
linux下简易端口扫描器
查看>>