Swift 運算子的先行順序和結合性
本篇教程屬於 Swift 系列教程之一 想像一下這個運算式: let amount = 1 + 2 * 3 根據 1 + 2 和 2 * 3 的計算順序的不同,amount 的值可能會截然不同。 計算順序是由運算子的先行順序決定的。根據先行順序,最常見的運算子排序如下: 乘法 (*)、除法 (/)、餘數 (%) 加法 (+)、減法 (-) 比較 (==, !=, <, >, <=, >=) 邏輯與 (&&) 和 邏輯或 (||) 三元條件 (?:) 賦值運算符和複合賦值運算符 (=, += 等等) 這意味著上述運算式首先計算乘法,然後再計算加法: let amount = 1 + 2 * 3 // = 7 完整的先行順序表格可以在 https://developer.apple.com/documentation/swift/swift_standard_library/operator_declarations 找到。 如果在一個表達式中有多個具有相同先行順序的運算子,我們使用運算子的結合性來確定哪個運算子擁有優先權。 例如,考慮下面的例子: let amount = 4 / 2 * 5 根據我們是先執行 4 / 2 還是 2 * 5,結果可能是 10 或 0....