arc4random_uniform()在条件中做了什么?

时间:2016-10-06 18:27:20

标签: swift arc4random

此代码将3作为参数传递给arc4random_uniform()函数,我猜它返回true或false。接下来,为变量分配一个枚举器。但我不明白这个功能是做什么的。

let randomState = arc4random_uniform(3) == 2 ? CellState.Alive :
                    CellState.Empty
let cell = Cell(grid: self,
                pos: (i, j),
                state: randomState)

我没有遵循这个逻辑。

1 个答案:

答案 0 :(得分:0)

你不理解“arc4random_uniform(3)== 2?CellState.Alive:CellState.Empty”格式?它被写成条件(三元)运算符:

  

条件? expr1:expr2

基本上,如果func arc4random_uniform(3)== 2,则让randomState == CellState.Alive,否则让randomState == CellState.Empty。