84669 人学习
152542 人学习
20005 人学习
5487 人学习
7821 人学习
359900 人学习
3350 人学习
180660 人学习
48569 人学习
18603 人学习
40936 人学习
1549 人学习
1183 人学习
32909 人学习
越详细越好
123
闭关修行中......
1、NSArray和NSMutableArray是foundation框架里的,不是swift的也不是objctive-C的,swift中可以使用,是框架兼容swift语言的问题,跟框架里其他东西都用swift重写了一遍一样。2、swift中的Array和[]是一个东西,这个是语言的东西了。3、NSArray和NSMutableArray的区别就是后者是可变数组,可以添加和删除元素。swift的Array不存在可变不可变的问题,对象类型声明为var就是可变,let就是不可变,和swift中其他类型的变量是一个道理,没有专门搞两个类出来。4、swift的array需要指定元素的类型,比如var arr = Array<String>();那么arr里面只能添加String对象,而NSArray/NSMutableArray则没有这种限制.这时因为swift是被设计成类型安全的,会进行类型检查。5.var arr = Array<String>()这个尖括号的使用时模板。可以用来写模板函数,类似:
func test<T>(eme:T) -> Array<T>{ return [eme,eme]; }
然后使用:
let obj1 = self.test("123") let obj2 = self.test(UIFont.systemFontOfSize(14));
在编译期,obj1和obj2就已经是类型已知的了。
首先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这种基础类型。
1、NSArray和NSMutableArray是foundation框架里的,不是swift的也不是objctive-C的,swift中可以使用,是框架兼容swift语言的问题,跟框架里其他东西都用swift重写了一遍一样。
2、swift中的Array和[]是一个东西,这个是语言的东西了。
3、NSArray和NSMutableArray的区别就是后者是可变数组,可以添加和删除元素。swift的Array不存在可变不可变的问题,对象类型声明为var就是可变,let就是不可变,和swift中其他类型的变量是一个道理,没有专门搞两个类出来。
4、swift的array需要指定元素的类型,比如var arr = Array<String>();那么arr里面只能添加String对象,而NSArray/NSMutableArray则没有这种限制.这时因为swift是被设计成类型安全的,会进行类型检查。
5.var arr = Array<String>()这个尖括号的使用时模板。可以用来写模板函数,类似:
然后使用:
在编译期,obj1和obj2就已经是类型已知的了。
首先NSArray和NSMutableArray是Objective-C的数组类型,NSArray和NSMutableArray区别在于,NSArray是用来创建一个固定数组也就是说一旦创建就不能对进行增加,删除或者修改元素,而NSMutableArray是可变数组,用它去创建的数组对象是允许修改数组内的元素的。
Array是Swift的数组,至于[]则是可以用来创建一个Swift空数组的一种方式(不过这种用法前提是需要已知数组类型的情况下才能使用),例如:
另外Swift的数组和OC的数组是有区别的: