Arrays 带字符串和数字的数组

Arrays 带字符串和数字的数组,arrays,swift,Arrays,Swift,在objective c中,很容易创建如下异构阵列: NSArray *myArray = @["String1", "String2", 123, 456]; 有没有办法在swift中创建这样一个数组 如果是,那怎么办 注意:我在swift中尝试过类似的语句- var arr = ["string1", "string2", 123, 456] 但它给出了编译错误: Playground execution failed: error: <REPL>:124:17: error

在objective c中,很容易创建如下异构阵列:

NSArray *myArray = @["String1", "String2", 123, 456];
有没有办法在swift中创建这样一个数组

如果是,那怎么办

注意:我在swift中尝试过类似的语句-

var arr = ["string1", "string2", 123, 456]
但它给出了编译错误:

Playground execution failed: error: <REPL>:124:17: error: cannot convert the expression's type 'Array' to type 'IntegerLiteralConvertible'
var arr : Any = ["string1", "string2", 123, 456]
执行失败:错误::124:17:错误:无法将表达式的类型“Array”转换为类型“IntegerLiteralConvertible”
变量arr:Any=[“string1”、“string2”、123456]

是的,您也可以在Swift中执行此操作

var arr: Array<Any> = ["string1", "string2", 123, 456]
var-arr:Array=[“string1”,“string2”,123456]

类型为
Any
的数组可以保存字符串、int以及其他对象和结构。

我在Playerd中尝试了此操作,但收到了以下错误消息:Playerd执行失败:错误::124:11:错误:无法将表达式的类型“array”转换为类型“arraylteralconvertible”var arr=[“string1”,“string2”,123,456]有什么想法吗?如果你显式地键入它,它应该可以工作。我刚刚编辑了我的回答,值得一提的是,任何时候你看到“它在操场上不起作用”并不一定意味着它在Swift中不起作用。游乐场目前正处于测试阶段,也存在一些问题。我的理解是,问题在于Swift中的字符串不能具有值
nil
,但
AnyObject
s可以
nil
<另一方面,code>任何s不需要是
nil
-可启用的。这是根本原因吗?