Swift – 迭代数组和字典
为了遍历数组和字典,我们必须使用 Swift 中的 for-in、forEach 循环。这两个循环都支持对这些类型的数据结构(如数组、字典等)进行迭代。for-in 循环对数据结构的使用与Python的 for 循环非常相似。这两个循环都用于运行一段代码一定次数。在本文中,我们将学习如何迭代数组和字典。
大批
数组是一种数据结构,可以保存类似类型的数据,其中值以连续顺序排列。它也被称为连续内存数据结构。数组用于存储相似类型的数据。如果我们创建一个整数数组,我们只能存储整数值。在 C 或Java中,我们已经声明了具有大小的数组,然后在内存中分配空间,以便我们能够根据分配的大小存储值。但是在 Swift 中,我们可以在不指定大小的情况下创建数组,根据给定的值,它会在后台自动声明大小。换句话说,它也被称为动态内存分配。让我们看看创建数组的语法。
句法:
let array_variable : [Data_type] = [value 1 , value 2 , . . , value n]
遍历数组
1、for-in循环:我们可以使用for-in循环来迭代一个数组,并在迭代过程中访问每个元素。
句法:
for _ in array_variable {print(i)}
例子:
Swift
// Swift program to iterating over array
// Create an array of integer type
let arr = [ 1, 2, 3, 4, 5 ]
print("Array 1:")
// Using for-in loop
// We iterate array
for i in arr{print(i)}
// Create an array of string type
let arr1 = [ "karthik", "chandu", "nandu" ]
print("Array 2:")
// Using for-in loop
// We iterate array
for j in arr1{print(j)}
Swift
// Swift program to iterating over array
// Create an array of integer type
let arr = [ "gfg", "Geeks", "GeeksforGeeks" ]
print("Array Elements :")
// Using forEach loop
// We iterate array
arr.forEach{i in print(i)}
Swift
// Swift program to iterating over dictionary
// Create a dictionary with key and value
let dict1 = [ 1:"karthik", 2:"chandu", 3:"nandu" ]
// Using for in loop
// We iterate dictionary
for (i, j) in dict1
{
// Display the key and value
print("(\(i) : \(j))")
}
Swift
// Swift program to iterating over dictionary
// Create a dictionary with key and value
let dict1 = ["India": 78 , "USA" : 1 , "UAED" : 3]
print("Key value pairs:")
// Using forEach loop
// We iterate dictionary
dict1.forEach{i, j in print("(\(i) : \(j))")}
输出:
Array 1:
1
2
3
4
5
Array 2:
karthik
chandu
nandu
说明:在第一步中,我们创建了两个具有一些值的数组。在下一步中,我们使用 for 循环遍历了数组。在 for 循环中,我们编写了一个 print 语句来打印数组的元素。在数组中,我们插入了从 1 到 5 的数字。所以我们得到了 1,2,3,4,5 作为输出。对于数组 2 也是如此。
2. ForEach 循环:我们还可以使用 forEach 循环遍历数组。使用 forEach 循环,我们从指定的数组中检索元素,就像 for-in 循环一样。为此,我们需要在 forEach 循环中取一个变量。
句法:
array_name.forEach{item in print(“(\(item)”)}
例子:
迅速
// Swift program to iterating over array
// Create an array of integer type
let arr = [ "gfg", "Geeks", "GeeksforGeeks" ]
print("Array Elements :")
// Using forEach loop
// We iterate array
arr.forEach{i in print(i)}
输出:
Array Elements :
gfg
Geeks
GeeksforGeeks
说明:在第一步中,我们创建了一个包含一些值的数组。在下一步中,我们使用 forEach 循环遍历了数组。在 forEach 循环中,我们编写了一个 print 语句来打印数组的元素。在数组中,我们插入了一些字符串值,并将相应的字符串值作为输出。
字典
字典是一种数据结构,包含键值对中的数据。一般来说,字典也有索引号。因此,使用该索引号,我们可以轻松找到与之关联的相关章节。以类似的方式,这里也与密钥一起创造价值。使用该键,我们可以返回相关的值。在创建字典时,我们将键分配给值。所以很容易返回值。让我们看看创建字典的语法。
句法:
let dict_variable = [keyt 1 : value 1 , key 2 : value 2 , . . , key n : value n]
迭代字典
1. for in 循环:我们都知道字典有键值对。为了遍历字典,我们需要同时检索键和值。为此,我们需要在 for-in 循环中获取两个变量。
句法:
for (key , value) in dict_variable{print(” \(key) = \(value) “)}
注意:在 print函数中的 = 的位置,我们可以使用任何东西,例如:, ...等。这里的键和值只是用于迭代键和值的变量。我们可以使用任何字母或单词来代替键和值。
例子:
迅速
// Swift program to iterating over dictionary
// Create a dictionary with key and value
let dict1 = [ 1:"karthik", 2:"chandu", 3:"nandu" ]
// Using for in loop
// We iterate dictionary
for (i, j) in dict1
{
// Display the key and value
print("(\(i) : \(j))")
}
输出:
(3 : nandu)
(2 : chandu)
(1 : karthik)
说明:在第一步中,我们创建了一个包含一些值的字典。使用 for 循环我们正在访问元素。在打印语句中,请仔细遵循语法。 i 和 j 旁边的 \ 非常重要,i 和 j 应该在括号内。在 i 和 j 的位置,我们可以使用任何有效的标识符。这里 i 代表键,j 代表值。
2. Foreach 循环:我们还可以使用 forEach 循环遍历字典。使用 forEach 循环,我们从指定的字典中检索键和值,就像 for-in 循环一样。为此,我们需要在 forEach 循环中获取两个变量。
句法:
dictionary_name.forEach{ key, value in print(“(\(key) : \(value))”)}
例子:
迅速
// Swift program to iterating over dictionary
// Create a dictionary with key and value
let dict1 = ["India": 78 , "USA" : 1 , "UAED" : 3]
print("Key value pairs:")
// Using forEach loop
// We iterate dictionary
dict1.forEach{i, j in print("(\(i) : \(j))")}
输出:
Key value pairs:
(India : 78)
(USA : 1)
(UAED : 3)
说明:在第一步中,我们创建了一个包含键值对的字典。使用 forEach 循环我们正在访问元素。在打印语句中,请仔细遵循语法。 i 和 j 旁边的 \ 非常重要,i 和 j 应该在括号内。在 i 和 j 的位置,我们可以使用任何有效的标识符。这里 i 代表键,j 代表值。
注意:每次我们不会得到相同的输出,顺序就会改变。