Swift 四 基本運算子及高階操作符

2021-07-06 07:46:38 字數 1363 閱讀 9180

1、swift入門學習筆記(第一版),對swift的基礎知識點進行梳理總結。知識點一直在變,只是作為參考,以蘋果官方文件為準~

2、在學習完基本的知識點以後會結合官方文件及相關資料,在此版本的基礎上進行新增更改。

swift 支援大部分標準 c 語言的運算子,且改進許多特性來減少常規編碼錯誤

賦值符(=)不返回值,以防止把想要判斷相等運算子(==)出錯(=)符導致的錯誤

let a = 1

var b = 2

//if b = a

算術運算子(+,-,*,/,%等)會檢測並不允許值溢位,以此來避免超出範圍的範圍時導致的異常結果

2.1、浮點數取餘操作

var x = 7%2.5

print(x) // 2.0

3.1、閉區間運算子

(a…b) 三個點定義a到b的範圍,包含a,b

for

index in 1...5

output:

123

45

3.2、半開區間運算子

a..

for index1 in

1..<5

output:

123

4

按位反,位與,位或,位異或此處不講解,對左移右移帶過

x>>a: x右移a位,無符號整數高位0補位,有符號高位符號位補位

x《當向乙個整數賦超過它容量的值是,swift會報錯而不是生成乙個無效的數,更加安全

var potentialoverflow = int8.

max//potentialoverflow += 1 //報錯

此時,可以選擇溢位運算子讓系統在數值溢位時草去截斷操作

溢位加法 &+

溢位減法 &-

溢位乘法 &*

//以溢位加法為例說明

var testoverflow = uint8.max

testoverflow = testoverflow &+ 1

print(testoverflow) //值為0

uint8的範圍是0-255,對255進行+1操作,超出uint8能容納位數導致數值溢位,留在uint8邊界內的即為計算結果

注:有符號數值溢位計算要考慮符號位

這部分在學完函式部分再補充

Swift 高階運算子

高階運算子 向上溢位 向下溢位 除零溢位,0作為被除數時結果是0 模零溢位,對 0求餘結果是0 varwilloverflow uint8 max 等於 255 willoverflow willoverflow 1 等於0 willoverflow willoverflow 1 等於2 varwi...

swift高階運算子

1.按位取反運算子 兩個進行比較,如果對方是0,那麼另一方就得取1,相反。let initialbits uint8 0b00001111 let invertedbits initialbits 等於 0b11110000 2.按位與運算子 兩個進行比較,當兩方都為1時,結果才會為1。let fi...

Swift 基本運算子

1,zebra 2 true,因為 1 小於 2 3 3 bird 4,dog 4,dog true,因為 4 等於 4,dog 等於 dog blue 1 purple 1 true blue false purple true 錯誤,因為 不能比較布林型別注意 1.bool 不能被比較,也意味著...