斯威夫特让一些最简单的事情变得如此艰难.如何制作一个简单的1000个浮点阵列?
我试试这个:
var computeArray = Array<Float>(repeating: nil, count:1000)
Run Code Online (Sandbox Code Playgroud)
得到"没有更多上下文的表达类型是模棱两可的"我也试过这个并得到了相同的东西:
var computeArray = [Float](repeating: nil, count:1000)
Run Code Online (Sandbox Code Playgroud)
这很简单,但我不能让它工作.这些与我在网上找到的例子基本相同.最新的Swift(4)有什么变化吗?
谢谢
试试这个.
var computeArray: Array<Float> = Array(repeating: 0, count: 1000)
Run Code Online (Sandbox Code Playgroud)
或者与nils
var computeArray: Array<Float?> = Array(repeating: nil, count: 1000)
Run Code Online (Sandbox Code Playgroud)
Swift 是一种类型安全的语言。这本质上意味着您不能将其他类型的值(此处nil)存储在特定类型的变量/常量(此处Float)中。
因此,如果您想在数组中存储 nil 值,请将其元素类型声明为可选(此处Float?)。
var computeArray = [Float?](repeating: nil, count:1000)
Run Code Online (Sandbox Code Playgroud)
或者
var computeArray = Array<Float?>(repeating: nil, count:1000)
Run Code Online (Sandbox Code Playgroud)