2014-06-15 104 views
4

我无法弄清楚如何将值添加到Swift中的空数组。我曾尝试开始与空数组以两种不同的方式:将值添加到空Swift数组

var emptyArray : Int[]? 
emptyArray = Int[]() 

var emptyArray = []

(顺便说一下,什么是与创建空数组的这两种方式的区别?)

我试图给emptyArray.append(1),emptyArray += [1]添加一个整数,但没有任何作品,也没有在指导手册中(或者它可能隐藏在某些我无法弄清楚的地方)。如果它们中有一个或多个值,这两种方法都会起作用,这使我发疯了!请让我知道如何知道如何去做。谢谢!

+0

区别:#1创建一个通用数组,该数组将包含Int和Int。 #2创建一个可以包含任何类的项目的非泛型数组。 –

+0

谢谢,你能告诉我为什么当我使用#1创建一个空数组时,'emptyArray.append(1)'和'emptyArray + = [1]'都不工作吗? – user945711

回答

12

首先,创建空int数组:

var emptyArray : Int[] = [] 

或:

var emptyArray = Int[]() 

将号码添加到该阵列(双向):

emptyArray += [1] 
emptyArray.append(2) 

阵列现在包含[1, 2]

+0

“+ =”和“追加”之间的区别是什么? – frankzk

+0

@frankzk这是一样的。 – Suisse

3

您需要冷杉牛逼声明空数组斯威夫特这样的:

var emptyArray = [Int]() 

然后,您可以添加与任何值/变量,数组你选择这样的:

emptyArray.append(6) 

只是确保你记住,试图追加一个与你的数组声明不匹配的类型会给你一个编译错误。例如,试图追加一个字符串会出错,因为这个数组是使用Int类型声明的。

XCode中的游乐场是用于测试这类事情的绝佳资源。