Swift入門-Day5:運算符

更新於 2024/06/21閱讀時間約 4 分鐘

算數運算子

Swift 支持基本的算數運算子,用於數值計算。

加法(+)

let sum = 5 + 3
print(sum) // 8

減法(-)

let difference = 5 - 3
print(difference) // 2

乘法(*)

let product = 5 * 3
print(product) // 15

除法(/)

let quotient = 5 / 3
print(quotient) // 1

餘數(%)

let remainder = 5 % 3
print(remainder) // 2

比較運算子

比較運算子用於比較值。

等於(==)

let isEqual = (5 == 3)
print(isEqual) // false

不等於(!=)

let isNotEqual = (5 != 3)
print(isNotEqual) // true

大於(>)

let isGreater = (5 > 3)
print(isGreater) // true

小於(<)

let isLess = (5 < 3)
print(isLess) // false

大於等於(>=)

let isGreaterOrEqual = (5 >= 3)
print(isGreaterOrEqual) // true

小於等於(<=)

let isLessOrEqual = (5 <= 3)
print(isLessOrEqual) // false

賦值運算子

賦值運算子用於給變數賦值。

單純賦值(=)

var value = 5
value = 3
print(value) // 3

加法賦值(+=)

var addValue = 5
addValue += 3
print(addValue) // 8

減法賦值(-=)

var subtractValue = 5
subtractValue -= 3
print(subtractValue) // 2

乘法賦值(*=)

var multiplyValue = 5
multiplyValue *= 3
print(multiplyValue) // 15

除法賦值(/=)

var divideValue = 5
divideValue /= 3
print(divideValue) // 1

餘數賦值(%=)

var remainderValue = 5
remainderValue %= 3
print(remainderValue) // 2

位元運算子

位元運算子用於位元層級的操作。

按位與(&)

let bitwiseAnd = 5 & 3
print(bitwiseAnd) // 1

按位或(|)

let bitwiseOr = 5 | 3
print(bitwiseOr) // 7

按位異或(^)

let bitwiseXor = 5 ^ 3
print(bitwiseXor) // 6

按位取反(~)

let bitwiseNot = ~5
print(bitwiseNot) // -6

左移位(<<)

let leftShift = 5 << 1
print(leftShift) // 10

右移位(>>)

let rightShift = 5 >> 1
print(rightShift) // 2

運算子的優先等級

運算子的優先等級決定了運算的順序。下面是一些常見運算子的優先等級(從高到低):

  1. 括號() - 強制運算順序
  2. 一元運算子!aa!~a
  3. 乘除模*/%
  4. 加減+-
  5. 移位運算<<>>
  6. 比較運算子<<=>>=
  7. 等於運算子==!=
  8. 按位與&
  9. 按位異或^
  10. 按位或|
  11. 邏輯與&&
  12. 邏輯或||
  13. 三元條件運算子? :
  14. 賦值運算子=+=-=*=/=%=<<=>>=&=^=|=

優先等級示例

let result = 2 + 3 * 4 // 3*4先執行,結果為14
print(result) // 14

let resultWithParentheses = (2 + 3) * 4 // 2+3先執行,結果為20
print(resultWithParentheses) // 20

了解運算子的優先等級可以幫助避免計算中的錯誤,並確保表達式按照預期的順序執行。

avatar-img
15會員
111內容數
日後將分享關於我的經驗(日常、工作、技術),並期待未來能創造屬於我的宇宙。
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
Michael楊 的其他內容
此章節旨在介紹Swift程式語言中的基本資料型別,包括整數、浮點數、布林型別、字串、字符、選擇型、型別轉換、自訂型別(包括類、結構和枚舉)、元組型別、集合型別、陣列型別和字典型別。每種型別的說明都包含了程式碼範例,以便讀者更好地理解其應用和使用方式。
本章節介紹了如何建立並設置Swift項目以及如何選擇和設置Swift代碼編輯器。這包括在Xcode和命令行中建立Swift項目,選擇Xcode、Visual Studio Code或AppCode作為編輯器,以及如何使用SPM安裝插件。
本章節旨在為讀者提供Swift程式語言的基礎知識,包括其基本語法、註解方法和變數使用方式,並通過具體的程式碼示例來說明這些概念。這將幫助讀者理解Swift的基本結構,並學會如何在Swift中定義變數並使用註解。
這份文件的目的是介紹Swift語言,包括它的特性、應用範疇,以及誰在使用它。它也提供了一些學習Swift的資源和工具,以及一些常見的Swift庫和框架。
在 TypeScript 中,套件是模組化代碼的集合,可以提高代碼的可重用性和可維護性。常見的套件包括各種庫和框架,如 lodash、express 等。以下是有關引用套件、自定義套件和常見套件的詳細介紹。
本章節的目的是介紹在TypeScript中如何進行例外處理。涵蓋了例外處理的重要性、語法、常見異常類型以及如何主動觸發異常訊息及用戶自定義異常訊息。為讀者提供了全面而深入的了解,以提高程式的可靠性、提供更好的反饋、增加程式的容錯性以及改善程式的可讀性。
此章節旨在介紹Swift程式語言中的基本資料型別,包括整數、浮點數、布林型別、字串、字符、選擇型、型別轉換、自訂型別(包括類、結構和枚舉)、元組型別、集合型別、陣列型別和字典型別。每種型別的說明都包含了程式碼範例,以便讀者更好地理解其應用和使用方式。
本章節介紹了如何建立並設置Swift項目以及如何選擇和設置Swift代碼編輯器。這包括在Xcode和命令行中建立Swift項目,選擇Xcode、Visual Studio Code或AppCode作為編輯器,以及如何使用SPM安裝插件。
本章節旨在為讀者提供Swift程式語言的基礎知識,包括其基本語法、註解方法和變數使用方式,並通過具體的程式碼示例來說明這些概念。這將幫助讀者理解Swift的基本結構,並學會如何在Swift中定義變數並使用註解。
這份文件的目的是介紹Swift語言,包括它的特性、應用範疇,以及誰在使用它。它也提供了一些學習Swift的資源和工具,以及一些常見的Swift庫和框架。
在 TypeScript 中,套件是模組化代碼的集合,可以提高代碼的可重用性和可維護性。常見的套件包括各種庫和框架,如 lodash、express 等。以下是有關引用套件、自定義套件和常見套件的詳細介紹。
本章節的目的是介紹在TypeScript中如何進行例外處理。涵蓋了例外處理的重要性、語法、常見異常類型以及如何主動觸發異常訊息及用戶自定義異常訊息。為讀者提供了全面而深入的了解,以提高程式的可靠性、提供更好的反饋、增加程式的容錯性以及改善程式的可讀性。
你可能也想看
Google News 追蹤
Thumbnail
*合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
Thumbnail
這篇文章介紹了 Swift 中字串的比較方法,並討論了使用日期字串進行比較的結果。同時也介紹了數字字串、符號字串和表情符號字串的比較原理。最後指出比較日期字串還是要轉成Date才是安全的做法。
Thumbnail
CBCentralManager:藍芽管理中心,做外部設備搜尋、連接。 CBPeripheral:外部設備 CBCharacteristic:外部設備的特徵。 首先要在info.plist裡設定新增藍芽服務。然後做宣告,如下: var centralManager: CBCentralM
Thumbnail
CBCentralManager:藍芽管理中心,做外部設備搜尋、連接。 CBPeripheral:外部設備 CBCharacteristic:外部設備的特徵。 首先先宣告: var centralManager: CBCentralManager = CBCentralManager.ini
Thumbnail
十進位轉二進位(Decimal to Binary) let dec = -813 let bin = String(UInt16(bitPattern: Int16(dec)), radix: 2) print(bin) // "1111110011010011" 十進位轉八進位(Deci
Thumbnail
十進位轉二進位(Decimal to Binary) let dec = 813 let bin = String(dec, radix: 2) print(bin) // "1100101101" 十進位轉八進位(Decimal to Octal) let dec = 813 let o
Thumbnail
字數算法 = string.count? 在swift算一個string的字數時候,很直覺的會想到用.count來算 let s = "這是幾個字呢".count print(s.count) // 6 毫無疑問的安心信賴6個字 表情符號的場合 let emoji = "😂" print
Thumbnail
一樣先來看官方文件 A view controller that provides access to documents or destinations outside your app’s sandbox. 其實就是讓你去讀取檔案App的東西 有兩種模式,Don’t copy the do
swift讀書筆記 https://docs.swift.org/swift-book/documentation/the-swift-programming-language/deinitialization/  class instance deallocated前會call deinitia
Thumbnail
俄羅斯被踢出 SWIFT 支付系統,媒體形容是美、歐政府對俄羅斯發動了金融核戰。到底什麼是 SWIFT 它是如何運作的,鬼宿來告訴大家媒體沒有說清楚的事。可以這麼說:如果沒有 SWIFT;美元連在境內流動都將是不可能的任務。
Thumbnail
*合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
Thumbnail
這篇文章介紹了 Swift 中字串的比較方法,並討論了使用日期字串進行比較的結果。同時也介紹了數字字串、符號字串和表情符號字串的比較原理。最後指出比較日期字串還是要轉成Date才是安全的做法。
Thumbnail
CBCentralManager:藍芽管理中心,做外部設備搜尋、連接。 CBPeripheral:外部設備 CBCharacteristic:外部設備的特徵。 首先要在info.plist裡設定新增藍芽服務。然後做宣告,如下: var centralManager: CBCentralM
Thumbnail
CBCentralManager:藍芽管理中心,做外部設備搜尋、連接。 CBPeripheral:外部設備 CBCharacteristic:外部設備的特徵。 首先先宣告: var centralManager: CBCentralManager = CBCentralManager.ini
Thumbnail
十進位轉二進位(Decimal to Binary) let dec = -813 let bin = String(UInt16(bitPattern: Int16(dec)), radix: 2) print(bin) // "1111110011010011" 十進位轉八進位(Deci
Thumbnail
十進位轉二進位(Decimal to Binary) let dec = 813 let bin = String(dec, radix: 2) print(bin) // "1100101101" 十進位轉八進位(Decimal to Octal) let dec = 813 let o
Thumbnail
字數算法 = string.count? 在swift算一個string的字數時候,很直覺的會想到用.count來算 let s = "這是幾個字呢".count print(s.count) // 6 毫無疑問的安心信賴6個字 表情符號的場合 let emoji = "😂" print
Thumbnail
一樣先來看官方文件 A view controller that provides access to documents or destinations outside your app’s sandbox. 其實就是讓你去讀取檔案App的東西 有兩種模式,Don’t copy the do
swift讀書筆記 https://docs.swift.org/swift-book/documentation/the-swift-programming-language/deinitialization/  class instance deallocated前會call deinitia
Thumbnail
俄羅斯被踢出 SWIFT 支付系統,媒體形容是美、歐政府對俄羅斯發動了金融核戰。到底什麼是 SWIFT 它是如何運作的,鬼宿來告訴大家媒體沒有說清楚的事。可以這麼說:如果沒有 SWIFT;美元連在境內流動都將是不可能的任務。