首页 > 试题广场 >

精简以下代码

[问答题]
精简以下代码
func divide(dividend: Double?, by divisor: Double?) -> Double? { if dividend == nil { return nil } if divisor == nil { return nil } if divisor == 0 { return nil } return dividend! / divisor!
}
推荐

这题考察的是 guard let 语句以及 optional chaining,最佳答案是

func divide(dividend: Double?, by divisor: Double?) -> Double? { 
    guard let dividend = dividend, let divisor = divisor, divisor != 0 else { return nil } return dividend / divisor
}

发表于 2018-07-12 20:36:32 回复(0)