【发布时间】:2018-07-14 13:48:06
【问题描述】:
我有以下数组:
[0, 0, 1, 1, 0, 0]
在某些情况下,我必须将 0 切换为 1,反之亦然。
在 JS 中我会这样做:array[index] = !array[index],但是,在 Swift 中,这不起作用。
有没有不使用if -> else 语句的优雅方式进行此类转换?
【问题讨论】:
-
array[index] = 1 - array[index] -
为什么不使用
Bool的数组来代替Int的数组? -
Swift 的一个重要点是(与许多其他语言相反)“值永远不会隐式转换为另一种类型,” 因此整数不能被视为布尔值或反之亦然。 – 我建议至少阅读 Swift Programming Language 书籍中的 A Swift Tour。