Swift程序 遍历数组
数组是用来按顺序存储相同数据类型的元素的。在这篇文章中,我们将学习如何编写一个Swift程序来迭代一个数组。
在这里,我们使用以下方法来迭代数组中的每个元素—-。
- 使用for-in循环
-
使用forEach()函数
-
使用while循环
-
使用enumerated()函数
方法1:使用for-in循环
要在一个数组上迭代,我们可以使用for-in循环。
语法
for value in Sequence { // statement }
这里,value参数包含了迭代过程中数组的一个元素,Sequence代表数组。
例子
下面的Swift程序将对一个数组进行迭代。
import Foundation import Glibc // Creating an array of string type let names = ["Lovely", "Mukta", "Mohini", "Norma", "Eli"] // Using for loop to iterate through each element of the array print("Array elements are:") for str in names { print(str) }
输出
Array elements are: Lovely Mukta Mohini Norma Eli
在上面的代码中,我们有一个字符串类型的数组。然后使用for-in循环遍历给定数组的每个元素并打印这些元素。
方法2:使用forEach(_:)函数
我们也可以使用forEach(:)函数来迭代给定数组的每个元素。forEach(:)函数对给定数组的每个元素调用给定的闭包。它的工作原理与for-in循环相同。
语法
func forEach(_C: (Self.Element)throws->Void)rethrows
这里,C代表一个闭包,它以给定数组的一个元素为参数。
例子
下面的Swift程序是对一个数组进行迭代。
import Foundation import Glibc // Creating an array of integer type let MyValues = [20, 3, 3, 4, 21, 4, 7, 10, 8, 4, 2] // Iterate over the elements of the array // Using forEach() function print("Array:") MyValues.forEach { (ele) in print(ele) }
输出
Array: 20 3 3 4 21 4 7 10 8 4 2
在上面的代码中,我们有一个整数类型的数组。然后我们使用forEach{(ele)在print(ele)}函数和closure来迭代给定数组的元素,并将它们打印在屏幕上。
方法3:使用while循环
我们也可以使用while循环来迭代给定数组的每个元素。
语法
while(condition){ // Statement }
这里,条件是任何表达式,语句是单个或多个语句块。在这里,只有当条件为真时,while循环才会迭代。如果条件为假,那么控制权就会转移到while循环之后的语句。
例子
下面的Swift程序是对一个数组进行迭代。
import Foundation import Glibc // Creating an array of integer type let MyValues = [2.0, 3.3, 3.1, 2.4, 0.21, 0.42, 1.7, 1.203, 8.9] print("Array:") // Iterate over the elements of the array // Using while loop var x = 0 while x < MyValues.count { print(MyValues[x]) x += 1 }
输出
Array: 2.0 3.3 3.1 2.4 0.21 0.42 1.7 1.203 8.9
在上面的代码中,我们有一个双数的数组。然后运行一个while循环来遍历MyValues数组中的每个元素,并显示m。这里,x代表元素的索引,所以在每一次遍历中,x的值增加1来移动到下一个元素。这个循环一直持续到数组的结束。
方法4:使用enumerated()函数
我们也可以使用enumerated()函数来迭代给定数组的每个元素。这个函数返回一个pair(a, b)的序列,其中’a’代表从0开始的连续整数,’b’代表给定数组的一个元素。
语法
func enumerated()
在这里,该函数不接受任何参数。
例子
下面的Swift程序是对一个数组进行迭代。
import Foundation import Glibc // Creating an array of integer type let MyString = ["oo", "pp", "ee", "ww", "ss", "qq", "ll", "rr", "tt"] print("Array elements along with their index:") // Iterate over the elements of the array // Using enumerated() function for (indexVal, ele) in MyString.enumerated() { print("Element [\(indexVal)]: \(ele)") }
输出
Array elements along with their index: Element [0]: oo Element [1]: pp Element [2]: ee Element [3]: ww Element [4]: ss Element [5]: qq Element [6]: ll Element [7]: rr Element [8]: tt
在上述代码中,我们有一个字符串类型的数组。然后我们运行一个for循环和enumerated()函数。这里,enumerated()函数返回两个值,即索引值和给定数组中的元素。
总结
这就是我们如何对数组进行迭代。所有讨论的方法都很好用,你可以根据你的要求使用任何一种方法。