Swif中数组相比OC中数组的新增方法

1) Swfit 中的数组 只能保存相同类型的值,不同于OC 与 Java 相同

2)      Swift初始化方法

var s0 = [1,2,3,4,5]

var s1 :[Int] = [1 ,2 ,3 ,4 ,5]

var s2: [String]

var s3 = [Int]()


在swift 中  如果真行复制操作     s3 = s1   ,  s3 会复制一份s1 的值,是一次深copy。两份值互不影响。

s3[0]的值发生了改变,但s1的值没有改变。输出 是1 , 2 ,3 ,4 ,5.

注意 :   有这种情况时      var s = [ ]   ,此时不是一个数组,不能进行  s [1]  = 3   具体原因现在也不清楚!

3)  isEmpty   (oc 没有)     判断array的count 是否为0

上面的 s2 现在是无法调用方法的,因为它只是一个申明,没有真实的内存非配。

4)   +=       (oc array 没有)  在末尾添加一个或多个值,添加一个时相当于append。多个时相当于之间添加一个数组。

但是写代码时添加一个值时会报错。

5)   s1 [startIndex ... endIndex]         取值为 [startIndex  endIndex)

6)     遍历数组的方式

  1. for  ...in     这个很常见了
  2. 利用元组返回下标跟具体的值 for (index, value ) in enumerate in (array)

for (index ,value) inenumerate (s1) {

println (" s1[\(index)] =\(value)")

}

7)   新的创建方式   [类型](count :        repeatedValue)

var   s6  = [String](count : 3
repeatedValue:"Hello,World" )

时间: 2024-11-10 07:51:49

Swif中数组相比OC中数组的新增方法的相关文章

Swift的数组与OC中数组的区别

相同的值可以多次出现在一个数组的不同位置: Swift中的数组,数据值在被存储进入到某个数组之前类型必须明确,可以显示的类型标注或者类型推断.而且,Swift中的数组不必是对象类型. OC中的NSArray和NSMutableArray,他们可以存储任何类型的实例,而且不提供他们返回对象的任何本质信息. Swift的数组与OC中数组的区别,布布扣,bubuko.com

JSON 数组转化 OC的数组转化成OC格式的字符串

1.将OC的数组转化成OC格式的字符串    NSArray * arr = @[@"aa",@"bb",@"cc"];2.转化    NSString * jsonStr = [arr JSONString];    NSLog(@"%@",jsonStr);

OC 中的重写 OC中没有重载 以及隐藏

一.定义: 重载.重写和隐藏是很容易混淆的类似概念.虽然所有这三种技术都使您得以创建同名的成员,但它们之间有一些重要的差异. 重载的成员用于提供属性或方法的不同版本,这些版本具有相同名称但是接受不同数量的参数或者接受不同数据类型的参数. 重写的属性和方法用于替换在派生类中不适合的继承的属性或方法.重写的成员必须接受同一数据类型和参数数量.派生类继承重写的成员. 隐藏的成员用于局部替换具有更广范围的成员.任何类型都可隐藏任何其他类型.例如,可声明隐藏同名继承方法的属性.无法继承隐藏的成员. Obj

qsort 函数的使用——对普通数组、指针数组、二维数组中的元素进行排序

在ANSI C中,qsort函数的原型是 #include <stdlib.h> void qsort(void *base, size_t nmemb, size_t size, int (*compar) (const void *, const void *)); 解释:qsort函数对含有nmemb个元素的数组进行排序,而base指针指向数组的第一个元素.这个数组的元素个数由size指定. compar函数对qsort的比较操作进行定义,所以可以定制数字的比较,字符串的比较,甚至结构体

OC中并发编程的相关API和面临的挑战

OC中并发编程的相关API和面临的挑战(1) 小引 http://www.objc.io/站点主要以杂志的形式,深入挖掘在OC中的最佳编程实践和高级技术,每个月探讨一个主题,每个主题都会有几篇相关的文章出炉,2013年7月份的主题是并发编程,今天挑选其中的第2篇文章(Concurrent Programming: APIs and Challenges)进行翻译,与大家分享一下主要内容.由于内容比较多,我将分两部分翻译(API和难点)完成,翻译中,如有错误,还请指正. 目录 1.介绍 2.OS

《Javascript权威指南》学习笔记之十二:数组、多维数组和符合数组(哈希映射)

Array(数组)是JavaScript中较为复杂的数据类型,同Java.C#.VB等程序语言的数组相比,Javascript数组中的元素不必为相同的数据类型,可以在数组每个元素上混合使用数字.日期.字符串.Object,甚至添加一个嵌套数组. 一.创建数组 1.var arr1 = new Array(); /var  arr2 = new Array(length); /var arr3 = new Array(element1,element2...); var arr4 = [eleme

oc中数组的学习过程

NSArray *aa = [[NSArray alloc]init]; NSArray *aaa = [NSArray array]; //声明单个内容数组 NSArray *aaaa = [NSArray arrayWithObject:@"sd"]; //声明多个内容数组 NSArray *arr = [NSArray arrayWithObjects:@"SDS",@"Dsad", nil]; //数组的长度 NSLog(@"%

oc中的数组 NSArray

1 //oc允许使用c语言的数组,但是很多时候会用NSArray这个数组的类创建对象 2 //NSArray是不可变数组,它有个子类NSMutableArray可变数组 3 4 //1.创建数组 5 //这是一个数组的对象,数组的元素是“one two three” 6 NSArray *array=[[NSArray alloc] initWithObjects:@"one",@"two",@"three",nil]; 7 //数组的元素可以是

OC中动态创建可变数组的问题.有一个数组,数组中有13个元素,先将该数组进行分组,每3个元素为一组,分为若干组,最后用一个数组统一管理这些分组.(要动态创建数组).两种方法

<span style="font-size:24px;">//////第一种方法 // NSMutableArray *arr = [NSMutableArray array]; // for (int i = 0; i < 13; i ++) { // [arr addObject:[NSString stringWithFormat:@"lanou%d",i + 1]]; // } // NSLog(@"%@",arr);