给定一个数组

let array: [Int]

还有一个变数
let addElement: Bool

只有在使用内联语法addElement为true时,才能有条件地添加元素?
以下工作:
let addElement = false
let array = [0, 1, addElement ? 2 : nil] //[0, 1, nil]

但是根本不应该有元素,而不仅仅是一个nil值。
可以像上面的例子那样写成一行吗?

最佳答案

虽然下面的方法没有在数组的初始化中定义元素,但它的优点是没有预先定义新索引。
我认为这是最接近在线解决方案的。

let addElement: Bool = false
var array = [0, 1]
(addElement) ? array.append(2) : Void()

09-28 05:02