[Swift]三元條件運算子
avatar-img
MC筆記

[Swift]三元條件運算子

更新於 發佈於 閱讀時間約 2 分鐘

Swift中的三元條件運算子(Ternary Conditional Operator)是一種簡潔的寫法,用於在滿足條件時返回一個值,否則返回另一個值。

基本語法

condition ? valueIfTrue : valueIfFalse

其中,condition是要測試的條件,如果為true,則返回valueIfTrue,否則返回valueIfFalse。


使用三元條件運算子來檢查一個數字是否為正:

let number = 10
let result = number > 0 ? "正數" : "負數或零"
print(result) // "正數"

在上面的例子中,三元條件運算子檢查變數number是否大於0。由於number是正數,因此返回“正數”,將其分配給result變數,並將結果列印出來。


三元條件運算子用於更複雜的表達式,例如:

let a = 10
let b = 20
let c = 30
let max = a > b ? (a > c ? a : c) : (b > c ? b : c)
print(max) // 30

在上面的例子中,三元條件運算子檢查變數a是否大於變數b,如果是,則檢查變數a是否大於變數c。如果是,則返回a,否則返回c。否則,檢查變數b是否大於變數c。如果是,則返回b,否則返回c。因此,max變數的值是30,這是變數a,b和c中的最大值。


需要注意的是三元運算子不應該被濫用,會降低程式閱讀性及可維護性。

在某些情況下使用if else語法會更好。

avatar-img
MC筆記
3會員
14內容數
留言
avatar-img
留言分享你的想法!
MC筆記 的其他內容
Multicolumn Listbox偵測滑鼠點擊,並讀取點擊Cell內的資料
在RT端使用Wavelet function遇到無法Deploy
執行Intouch Windows Viewer 有時會發生程式解析度錯誤,無法正常顯示元件。 現場機器又無法使用Maker重新設定解析度可以使用以下做法,但此做法只能調整工作視窗的大小,無法調整元件大小 開啟專案執行路徑,找到"INTOUCH.INI"這個檔案 打開INTOUCH.ini設定下列參
建立Modbus IO Server
因專案需求需要同時間控制兩台以上不同設備 這些設備都是使用Modbus RTU的方式進行通訊 這裡記錄一下怎麼對兩台以上設備讀取的程式
Multicolumn Listbox偵測滑鼠點擊,並讀取點擊Cell內的資料
在RT端使用Wavelet function遇到無法Deploy
執行Intouch Windows Viewer 有時會發生程式解析度錯誤,無法正常顯示元件。 現場機器又無法使用Maker重新設定解析度可以使用以下做法,但此做法只能調整工作視窗的大小,無法調整元件大小 開啟專案執行路徑,找到"INTOUCH.INI"這個檔案 打開INTOUCH.ini設定下列參
建立Modbus IO Server
因專案需求需要同時間控制兩台以上不同設備 這些設備都是使用Modbus RTU的方式進行通訊 這裡記錄一下怎麼對兩台以上設備讀取的程式