?:符号

2017 - 09 - 21

Xcode Version 9.0 (9A235)

let a = true ? true ? 1 : 2 : 3  
let b = true ? false ? 1 : 2 : 3  
let c = false ? false ? 1 : 2 : 3  
let d = false ? true ? 1 : 2 : 3  

// a=1  b=2   c=3  d=3  

解1: 右向左 就近结合
解2: bool1 决定 50% 结果
解3: bool2 决定 25% 结果
即:
bool1 ? bool2 ? 25% : 25% : 50%

Table of Contents