时间:2021-05-02
Swift 数组用于存储相同类型的值的顺序列表。Swift 要严格检查,它不允许错误地在数组中存放了错误的类型。
如果赋值创建数组到一个变量,它总是可变的,这意味着可以通过添加元素来改变它, 删除或更改其项目,但如果分配一个数组常量到则该数组,则数组是不可被改变的, 也就它的大小和内容不能被改变。
创建数组
可以使用下面的初始化程序语法来创建某种类型的空数组:
下面是创建一个给定的大小,并用初始值的数组的语法:
下面是一个例子,以创建具有3个元素并初始值为零的 int 类型空数组:
下面是一个创建三个元素的数组,并指定三个值的数组的例子:
访问数组
可以使用下标语法从数组中检索对应值,传递数组名后方括号内的索引对应的值,如下:
在这里,指数从0开始,这意味着可以使用索引0来访问第一个元素,第二元素可以通过使用索引1进行访问,其它类似。让我们来看看下面创建,初始化和访问数组的例子:
import Cocoa
var someInts = [Int](count: 3, repeatedValue: 10)
var someVar = someInts[0]
println( "Value of first element is (someVar)" )
println( "Value of second element is (someInts[1])" )
println( "Value of third element is (someInts[2])" )
当上述代码被编译和执行时,它产生了以下结果:
修改数组
可以使用 append() 方法或加法赋值运算符(+=)将新的项目添加到数组的末尾,在这里首先创建一个空的数组,然后添加新的元素到数组中,如下所示:
import Cocoa
var someInts = [Int]()
someInts.append(20)
someInts.append(30)
someInts += [40]
var someVar = someInts[0]
println( "Value of first element is (someVar)" )
println( "Value of second element is (someInts[1])" )
println( "Value of third element is (someInts[2])" )
当上述代码被编译和执行时,它产生了以下结果:
可以通过分配一个在给定的索引处新的值修改数组的现有元素,如在下面的例子:
复制代码 代码如下:
import Cocoa
var someInts = [Int]()
someInts.append(20)
someInts.append(30)
someInts += [40]
// Modify last element
someInts[2] = 50
var someVar = someInts[0]
println( "Value of first element is (someVar)" )
println( "Value of second element is (someInts[1])" )
println( "Value of third element is (someInts[2])" )
当上述代码被编译和执行时,它产生了以下结果:
迭代/遍历数组
可以使用 for-in 循环迭代级数,在下面的例子是数组的整个集值,如下图所示:
import Cocoa
var someStrs = [String]()
someStrs.append("Apple")
someStrs.append("Amazon")
someStrs += ["Google"]
for item in someStrs {
println(item)
}
当上述代码被编译和执行时,它产生了以下结果:
也可以使用 enumerate() 函数,如下面的例子所示,它返回索引及对应的值:
复制代码 代码如下:
import Cocoa
var someStrs = [String]()
someStrs.append("Apple")
someStrs.append("Amazon")
someStrs += ["Google"]
for (index, item) in enumerate(someStrs) {
println("Value at index = (index) is (item)")
}
当上述代码被编译和执行时,它产生了以下结果:
两个数组相加
使用加法运算符(+),以添加的相同类型的数组,这将产生新的数组是来自两个数组值相加组合后的数组,如下:
import Cocoa
var intsA = [Int](count:2, repeatedValue: 2)
var intsB = [Int](count:3, repeatedValue: 1)
var intsC = intsA + intsB
for item in intsC {
println(item)
}
当上述代码被编译和执行时,它产生了以下结果:
count 属性
可以使用只读计算 (count) 数组属性,找出下面显示出数组中元素的个数:
import Cocoa
var intsA = [Int](count:2, repeatedValue: 2)
var intsB = [Int](count:3, repeatedValue: 1)
var intsC = intsA + intsB
println("Total items in intsA = (intsA.count)")
println("Total items in intsB = (intsB.count)")
println("Total items in intsC = (intsC.count)")
当上述代码被编译和执行时,它产生了以下结果:
空属性
使用只读数组的空属性(isEmpty)找出一个数组是否为空,如下图所示:
import Cocoa
var intsA = [Int](count:2, repeatedValue: 2)
var intsB = [Int](count:3, repeatedValue: 1)
var intsC = [Int]()
println("intsA.isEmpty = (intsA.isEmpty)")
println("intsB.isEmpty = (intsB.isEmpty)")
println("intsC.isEmpty = (intsC.isEmpty)")
当上述代码被编译和执行时,它产生了以下结果:
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
详解Swift中对C语言接口缓存的使用以及数组与字符串转为指针类型的方法由于Swift编程语言属于上层编程语言,而Swift中由于为了低层的高性能计算接口,所以
swift字符串String的使用方法1、声明?1234567891011varstr="Hello,playground"//varstr:String="H
今天我们就来看俺Microsoft系统增强工具PowerToys中ShortcutGuide快捷键指南使用方法,我们安装了Microsoft系统增强工具Powe
Swift是一门新的编程语言,用于编写iOS和OSX应用程序。Swift结合了C和Objective-C的优点并且不受C兼容性的限制。Swift使用安全的编程模
本文实例讲述了javascript中数组的定义及使用方法。分享给大家供大家参考。具体分析如下:复制代码代码如下://【字典形式的数组】vararr=newArr