为了账号安全,请及时绑定邮箱和手机立即绑定

关于 swift 中, Array,NSArray,NSMutableArray,[] ?

关于 swift 中, Array,NSArray,NSMutableArray,[] ?

ITMISS 2019-02-05 10:06:39
swift 中, Array,NSArray,NSMutableArray,[] 这些数组有什么区别
查看完整描述

3 回答

?
慕森卡

TA贡献1806条经验 获得超8个赞

首先NSArray和NSMutableArray是Objective-C的数组类型,NSArray和NSMutableArray区别在于,NSArray是用来创建一个固定数组也就是说一旦创建就不能对进行增加,删除或者修改元素,而NSMutableArray是可变数组,用它去创建的数组对象是允许修改数组内的元素的。

Array是Swift的数组,至于[]则是可以用来创建一个Swift空数组的一种方式(不过这种用法前提是需要已知数组类型的情况下才能使用),例如:

  var shoppingList: [String] = ["Eggs", "Milk"]   //创建一个String类型的数组
  shoppingList = []  //让shoppingList变成一个String类型的空数组

另外Swift的数组和OC的数组是有区别的:

1.Swift数组,一个数组只能存储一种特定的元素类型,也就是说数组在定义的时候必须指明数组的类型(方法是通过显式的类型标注或类型推断。这与 Objective-C 的NSArray和NSMutableArray不同,它们一个数组可以存储多种任意类型的对象。2.OC中数组只能存储class类型,而Swift的数组不仅能存class类型还能存储像Int这种基础类型。


查看完整回答
反对 回复 2019-03-16
?
交互式爱情

TA贡献1712条经验 获得超3个赞

最本质的区别应该[]是值类型,而NSMutableArray是引用类型吧。

查看完整回答
反对 回复 2019-03-16
  • 3 回答
  • 0 关注
  • 2572 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号