Swift学习----数组

数组(有序数据的集)
*格式 : [] / [Int]() / Array<Int>()
* let 不可变数组
* var 可变数组
注意:
* 不需要改变集合的时候创建不可变集合是很好的实践。如此 Swift 编译器可以优化我们创建的集合。

// 声明数组
let arr1: Array<Int>
// 推荐
let arr2: [Int]
arr2 = [10, 20] // 先定义再初始化
//arr2 = [30, 40]

var arr3: [Double]
arr3 = [10.1, 10.2]
arr3 = [8.1, 9.0]

// 定时的同时初始化
let arr4 = [10, 20, 30]
var arr5 = [10.1, 10.2, 10.3]

// 取值
arr5[0]

// 遍历
for item in arr5 {
    print(item)
}

for (xxx, ooo) in arr5.enumerate() {
    print(xxx)
    print(ooo)
}

// 添加
arr5.append(9.1)

// 删除
arr5.removeAtIndex(1)
arr5

arr5.removeAll()

// 合并
var arr6 = [1, 3, 5]
var arr7 = [2, 4, 6]
//arr6 += arr7
arr6 += arr7[0..<2]

// 初始化一个带默认值的数组
var arr8 = Array(count: 5, repeatedValue: 0)

//数组如何分配存储空间, 按照2的倍数来分配
var arr9 = [Int]()
arr9.capacity
arr9.append(10)
arr9.capacity
arr9.append(11)     [10, 11]
arr9.capacity
arr9.append(12)     [10, 11, 12]
arr9.capacity
arr9.append(13)
arr9.capacity
arr9.append(15)
arr9.capacity
时间: 2024-12-20 22:58:18

Swift学习----数组的相关文章

Swift学习笔记四:数组和字典

最近一个月都在专心做unity3d的斗地主游戏,从早到晚,最后总算是搞出来了,其中的心酸只有自己知道.最近才有功夫闲下来,还是学习学习之前的老本行--asp.net,现在用.net做项目流行MVC,而不是之前的三层,既然技术在更新,只能不断学习,以适应新的技术潮流! 创建MVC工程 1.打开Visual studio2012,新建MVC4工程 2.选择工程属性,创建MVC工程 3.生成工程的目录 App_Start:启动文件的配置信息,包括很重要的RouteConfig路由注册信息 Conten

Swift学习第一天之数组

Swift学习第一天: 1:数组的使用 数组的定义: let numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] 2:数组的遍历 for num in numbers { print(num) } 3:也是通过下标来制定内容 let num1 = numbers[0] let num2 = numbers[1] 4.定义可变不可变 `let` 定义不可变数组 `var` 定义可变数组 5.向可变数组里面追加内容 array1.append("wangwu"

Swift编程语言翻译与学习——数组

Swift 语言提供经典的数组和字典两种集合类型来存储集合数据.数组用来按顺序存储相同类型的数据.字典虽然无序存储相同类型数据值但是需要由独有的标识符引用和寻址(就是键值对). Swift 语言里的数组和字典中存储的数据值类型必须明确. 这意味着我们不能把不正确的数据类型插入其中. 同时这也说明我们完全可以对获取出的值类型非常自信. Swift 对显式类型集合的使用确保了我们的代码对工作所需要的类型非常清楚,也让我们在开发中可以早早地找到任何的类型不匹配错误. 注意: Swift 的数组结构在被

Swift学习笔记(12)--数组和字典的复制

Swift中,数组Array和字典Dictionary是用结构来实现的,但是数组与字典和其它结构在进行赋值或者作为参数传递给函数的时候有一些不同. 并且数组和字典的这些操作,又与Foundation中的NSArray和NSDictionary不同,它们是用类来实现的. 注意:下面的小节将会介绍数组,字典,字符串等的复制操作.这些复制操作看起来都已经发生,但是Swift只会在确实需要复制的时候才会完整复制,从而达到最优的性能. 字典的赋值和复制操作 每次将一个字典Dictionary类型赋值给一个

Swift学习笔记(5)--数组

数组的下标从0开始计数,相关方法属性涉及到下标时也从0开始计数 1.定义: //1.可变数组 var cityArray = ["Portland","San Francisco","Cupertino"] //2.不可变数组 let cityArray2 = ["Portland","San Francisco","Beijing"] //3.空数组 var animalArray =

Swift学习笔记数组与字典

swift中数组和字典都是以结构体的形式实现的. 首先,这个很奇葩,我不知道为什么这样设计,这样是出于一个什么样的考虑. 在C#中使用字典: Dictionary<int, string> dic = new Dictionary<int, string>(); Dictionary<int, string> dic1 = dic; dic.Add(1,"123"); dic1[1]="456"; Console.WriteLin

Swift学习笔记(二十)——数组的基本操作

Swift中数组的基本操作具体如下: (1)计算数组长度 . (2)判断数组是否为空 . (3)数组新增一个元素 . (4)数组合并 . (5)  插入元素到任意位置 . (6)删除任意位置的某个元素 (7)删除数组最后一个元素 (8)插入删除操作数组不能越界 如以下操作都是非法的: . (9)修改数组中的某个值 . (10)数组元素的批量替换 其中可以替换的替换的个数可以是不匹配的: . 但是以下的操作是非法的:批量替换也必须是用数组去赋值: (11)数组的遍历 for in 循环遍历: .

swift学习笔记-数组

swift中数组用[]表示 1.创建一个空数组 let emptyArr = [String]() let emptyArr1 : [NSNumber] = [] 这两种方式都可以 2.访问元素 var numArr=["1","2","3"] println("第一个元素:\(test1Array[0])") println("最后一个元素:\(test1Array.last)") 3.判断数组是否为空

swift学习笔记(三)关于拷贝和引用

在swift提供的基本数据类型中,包括Int ,Float,Double,String,Enumeration,Structure,Dictionary都属于值拷贝类型. 闭包和函数同属引用类型 捕获则为拷贝.捕获即定义这些常量和变量的原作用域已不存在,闭包仍然可以在闭包函数体内引用和修改这些值 class属于引用类型. Array的情况稍微复杂一些,下面主要对集合类型进行分析: 一.关于Dictionary:无论何时将一个字典实例赋给一个常量,或者传递给一个函数方法时,在赋值或调用发生时,都会