Swift - 運(yùn)算符

一、Swift所支持的部分運(yùn)算符
  • 賦值運(yùn)算符:=
  • 復(fù)合賦值運(yùn)算符:+=、-=
  • 算術(shù)運(yùn)算符:+、-、*、/
  • 求余運(yùn)算符:%
  • 自增、自減運(yùn)算符:++、--
  • 比較運(yùn)算符:==、!=、>、<、>=、<=
  • 邏輯運(yùn)算符:&&、||、!
  • 三目運(yùn)算符:? :
  • 范圍運(yùn)算符:..< 、 ...
  • 溢出運(yùn)算符:&+、&-、&*、&/、&%
二、賦值運(yùn)算符
  • 1對(duì)1賦值
    var a = 5
    let b = 20
  • N對(duì)N賦值
    let (x, y) = (1, 2)
    //x值是1,y值是2,并且都是常量
  • 跟C\OC不一樣的是:Swift的賦值運(yùn)算符沒有返回值
    if (x = y) { }
    上面的代碼是錯(cuò)誤的,因?yàn)閤 = y并沒有返回具體的值
三、求余運(yùn)算符
  • %在Swift中叫“求余運(yùn)算符”,或“模運(yùn)算符”
    9 % 4 //1
    -9 % 4 //-1
    9 % -4 //1
    -9 % -4 //-1
    //求余結(jié)果的下負(fù)跟%左邊數(shù)值的正負(fù)一樣
  • 跟C語言不一樣的是,Swift支持浮點(diǎn)數(shù)的計(jì)算
    8 % 2.5 //0.5
四、范圍運(yùn)算符
  • 范圍運(yùn)算符用來表示一個(gè)范圍,有2種類型的范圍運(yùn)算符
    閉合范圍運(yùn)算符: a...b 表示[a, b],包含a和b
    半閉合范圍運(yùn)算符:a..<b 表示[a, b),包含a,不包含b
五、溢出運(yùn)算符
  • 第種數(shù)據(jù)類型都有自己的取值范圍,默認(rèn)情況下,一旦賦了一個(gè)超出取值范圍的數(shù)值,會(huì)產(chǎn)生編譯或運(yùn)行時(shí)錯(cuò)誤
    下面的寫法是錯(cuò)誤的:
    let x = UInt8.max
    let y = x + 1 //運(yùn)行時(shí)報(bào)錯(cuò)

  • Swift為整型計(jì)算提供了5個(gè)&開頭的運(yùn)算符,能對(duì)超出取值范圍的數(shù)值進(jìn)行靈活處理

  • 值的上溢出
    let x = UInt8.max //x的值是255(最大值)
    let y = x &+ 1 //y的值是0 (最小值)


  • 值的下溢出
    let x = UInt8.min //x的值是0(最小值)
    let y = x &- 1 //y的值是255 (最大值)


  • 有符號(hào)整數(shù)也有類似的溢出現(xiàn)象
    let x = Int8.min //x的值是-128(最小值)
    let y = x &- 1 //y的值是127(最大值)

  • 除零溢出
    默認(rèn)情況下,一個(gè)數(shù)除以0,或者對(duì)0求余數(shù),編譯器直接報(bào)錯(cuò)
    let x = 10
    let y = x / 0 //報(bào)錯(cuò)
    let z = x % 0 //報(bào)錯(cuò)
    如果使用溢出運(yùn)算符,就不會(huì)報(bào)錯(cuò)
    let x = 10
    let y = x &/ 0 //y的值是0
    let z = x &% 0 //z的值是0

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 229,885評(píng)論 6 541
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 99,312評(píng)論 3 429
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 177,993評(píng)論 0 383
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我,道長(zhǎng),這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,667評(píng)論 1 317
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 72,410評(píng)論 6 411
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 55,778評(píng)論 1 328
  • 那天,我揣著相機(jī)與錄音,去河邊找鬼。 笑死,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,775評(píng)論 3 446
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 42,955評(píng)論 0 289
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 49,521評(píng)論 1 335
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 41,266評(píng)論 3 358
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 43,468評(píng)論 1 374
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,998評(píng)論 5 363
  • 正文 年R本政府宣布,位于F島的核電站,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 44,696評(píng)論 3 348
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 35,095評(píng)論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,385評(píng)論 1 294
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 52,193評(píng)論 3 398
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 48,431評(píng)論 2 378

推薦閱讀更多精彩內(nèi)容

  • 運(yùn)算符是一個(gè)符號(hào),用于告訴編譯器執(zhí)行一個(gè)數(shù)學(xué)或邏輯運(yùn)算。 Swift 提供了以下幾種運(yùn)算符: 算術(shù)運(yùn)算符 比較運(yùn)算...
    零度_不結(jié)冰閱讀 312評(píng)論 0 0
  • 1、簡(jiǎn)介 Swift中類或結(jié)構(gòu)體可以對(duì)已有的運(yùn)算符進(jìn)行自定義實(shí)現(xiàn),賦予另外一種功能。可以成為運(yùn)算符函數(shù),即運(yùn)算符重...
    SuperDawn_0828閱讀 2,076評(píng)論 0 3
  • 謹(jǐn)以此文獻(xiàn)給我親愛的爸爸媽媽哥哥姐姐和過往的青春歲月…… 今天是六一兒童節(jié),孩子在學(xué)校里參加...
    夢(mèng)中幽蘭閱讀 698評(píng)論 3 4
  • 最近身心疲憊,越發(fā)的喜歡周六,因?yàn)檫@一天我可以什么都不管什么都不想,放空自我,不用再六點(diǎn)準(zhǔn)時(shí)起床,不用再擔(dān)心誰誰誰...
    思舊辰閱讀 335評(píng)論 0 0
  • 旗叔 (2006-10-26 18:57:24) 我已經(jīng)太多的寫到了死亡,努力讓自己不再寫死亡。畢竟,這話題太沉重...
    等等自己閱讀 343評(píng)論 0 0