Arrays 空数组与字典

Arrays 空数组与字典,arrays,swift,dictionary,Arrays,Swift,Dictionary,我刚刚学习Swift,发现了空数组和空字典的概念。我不能用简单的例子来解释它,什么时候选择它,有什么好处?谢谢你的帮助。 let emptyArray=[String]() 让emptyDictionary=[String:Float]() 如果常数可以是空的,那么为什么要使用数组呢?这取决于您要做什么。这些变量并不是孤立存在的。如果他们这样做了,他们将是无用的,你应该删除他们 您正在调用需要数组的API吗?那么你会给它传递一个数组 您正在调用需要字典的API吗?好吧,那你就给它递一本字典。没有

我刚刚学习Swift,发现了空数组和空字典的概念。我不能用简单的例子来解释它,什么时候选择它,有什么好处?谢谢你的帮助。
let emptyArray=[String]()
让emptyDictionary=[String:Float]()


如果常数可以是空的,那么为什么要使用数组呢?

这取决于您要做什么。这些变量并不是孤立存在的。如果他们这样做了,他们将是无用的,你应该删除他们

您正在调用需要数组的API吗?那么你会给它传递一个数组

您正在调用需要字典的API吗?好吧,那你就给它递一本字典。

没有什么可“翻”的。空的东西就是空的东西。空虚对事物的东西没有影响。例如:

  • 空的蜂蜜罐是一个没有蜂蜜的罐

  • 空银行账户是一个没有钱的银行账户

  • 空字符串是一个没有字符的字符串

  • 空数组是一个没有元素的数组

  • 空字典是一个没有键值对的字典

一根绳子的空白并不会使它变得更像一根绳子;它正好是空的。银行账户的空白并不会减少银行账户的价值。您不会说:如何在空银行帐户和空字符串之间进行选择?所以你不会说:我如何在空数组和空字典之间进行选择


因此,如果你不理解数组和字典之间的区别,那是一回事。但是在你的问题中使用“empty”并没有增加任何东西。

字典是一个无序的数据结构。数据由键值访问

数组是一种有序的数据结构。数据是按位置访问的

dict["aKey"] = CGFloat(1)

array.append("Thursday")
字典通过添加键和赋值来增长


数组通过在末尾添加值而增长。

数组->数组,字典->字典您打算以后向它们添加数据吗?对于您编写的代码(使用
let
),它们几乎都是毫无用处的,因为您无法向它们添加任何内容,也无法使用空集合执行任何操作。那么,我可以使用emptyArray或emptyDictionary的情况会是什么呢?我想不出任何一种情况下我想单独使用其中任何一种。它们只有在你把东西放进去的时候才有用,这完全取决于你想把什么放进去,以及你想用它做什么。谢谢马特的回复。但有一件事我仍然感到困惑,那就是我可以使用emptyHoneyJar来填充它,使用EmptyBankAccount来存款等等。但是我可以使用emptyArray或emptyDictionary在其中添加值(可能是键值对)吗?如果是的话,它可以被初始化为常量吗?你可以将空数组或字典初始化为常量,但是如果它是常量,你就永远不能在里面放任何东西,所以你为什么要这样做并不明显。如果它是一个变量,而不是一个常数,那么这个类比就成立了。谢谢