99热99这里只有精品6国产,亚洲中文字幕在线天天更新,在线观看亚洲精品国产福利片 ,久久久久综合网

歡迎加入QQ討論群258996829
麥子學(xué)院 頭像
蘋果6袋
6
麥子學(xué)院

Swift基礎(chǔ)之基本運(yùn)算符

發(fā)布時(shí)間:2016-07-14 11:47  回復(fù):0  查看:2447   最后回復(fù):2016-07-14 11:47  

最近在學(xué)習(xí)Swift ,有一些自己的心得體會(huì)。今天從Swift基本運(yùn)算符談起,來(lái)談?wù)勎业膶W(xué)習(xí)心得,有興趣的同學(xué)我們一起學(xué)習(xí)一起進(jìn)步。

 

1.常量和變量
用let來(lái)聲明常量,用var來(lái)聲明變量。

    let a = 10;

    var b = 0;

可以理解為:聲明了一個(gè)名字為a的常量,并給它賦值為10;
聲明了一個(gè)名字為b的變量,并給它賦初始值為0;

可以在一行聲明多個(gè)常量或變量:

    var x = 0.0, y = 0.0, z = 0.0

2.類型標(biāo)注
聲明常量或變量的時(shí)候可以加上類型標(biāo)注

    var a : String

    a = "hello"

聲明一個(gè)類型為String,名字為a的變量
給變量a賦值

可以定義多個(gè)同類型的變量

  var a, b, c:Double

3.打印輸出
Swift 用字符串插值(string interpolation)的方式把常量名或者變量名當(dāng)做占位符加入到長(zhǎng)字符串中,Swift 會(huì)用當(dāng)前常量或變量的值替換這些占位符。將常量或變量名放入圓括號(hào)中,并在開括號(hào)前使用反斜杠將其轉(zhuǎn)義:

    print("a 的值為\(a)")

4.注釋

    //這是單行注釋

    /*這是多

    行注釋*/

5.類型轉(zhuǎn)換:Int轉(zhuǎn)Double

    let three = 3

    let p = 22.11

    let w = Double(three) + p

6.布爾值

    let a = true

    let b = false

7.元組

    let htt = (404,"not found")

    http404Error 的類型是 (Int, String),值是 (404, "Not Found")

可以將元組分解

    let (code,message) = htt

    print("this code is \(code)")

    print("this message is \(message)")

如果只需要一部分元組,分解是可以把不需要的忽略,用_標(biāo)記

    let (code,_) = htt

可以用下標(biāo)來(lái)訪問(wèn)元組中的元素

    print("this code is \(htt.0)")

    print("this message is \(htt.1)")

給元素命名,然后通過(guò)名字來(lái)獲取這些元素的值:

    let htt = (code:200,message:"ok")

    print("this code is \(htt.code)")

    print("this message is \(htt.message)")

8.可選類型

    var a : Int? = 404 //a包含一個(gè)可選的Int

如果聲明一個(gè)可選的常量或變量但是沒(méi)有賦值,則默認(rèn)為nil

  var a : String?

9.隱式解析可選類型
一個(gè)隱式解析可選類型其實(shí)就是一個(gè)普通的可選類型,但是可以被當(dāng)做非可選類型來(lái)使用,并不需要每次都使用解析來(lái)獲取可選值。下面的例子展示了可選類型String和隱式解析可選類型String之間的區(qū)別

    let a : String? = "hahaha"

    let b : String = a!    //需要驚嘆號(hào)來(lái)獲取值

 

    let a : String! = "hehehe"

    let b : String = a   //不需要驚嘆號(hào)來(lái)獲取值

注意
如果一個(gè)變量之后可能變成nil的話請(qǐng)不要使用隱式解析可選類型。如果你需要在變量的生命周期中判斷是否是nil的話,請(qǐng)使用普通可選類型。

10.錯(cuò)誤處理

    func canThrowAnerror() throws{

        //這個(gè)函數(shù)可能拋出錯(cuò)誤

    }

一個(gè)函數(shù)可以通過(guò)在聲明中添加throws關(guān)鍵詞來(lái)拋出錯(cuò)誤消息。當(dāng)你的函數(shù)能拋出錯(cuò)誤消息時(shí), 你應(yīng)該在表達(dá)式中前置try關(guān)鍵詞。

    do{

        try canThrowAnerror() throws{

            //沒(méi)有錯(cuò)誤拋出

        }

            //有錯(cuò)誤拋出

    }

 

11.基本運(yùn)算符

· 賦值運(yùn)算符= 

· 

算術(shù)運(yùn)算符 +,-,*,/
加法運(yùn)算符也可用作String的拼接:"hello,"+"world"

· 

· 

求余運(yùn)算符 a % b

· 

· 

一元負(fù)號(hào)運(yùn)算符:

· 

  let three = -3  //three 等于 -3

  let a = -three   //a 等于 3  ,因?yàn)椤?-3”

· 

· 

一元正號(hào)運(yùn)算符:

· 

  let two = -2    //two 等于 -2

  let a = +two  //a 等于 -2

· 

· 組合賦值運(yùn)算符: +=,-= 

· 比較運(yùn)算符 ==,!=,>,<,>=,<= 

12.三目運(yùn)算符:它的形式是:問(wèn)題 ? 答案一 : 答案二

    let a = 10

    let b = 12

    let c = true

    let d = a + (c ? a : b)

13.空合運(yùn)算符: a ?? b
對(duì)可選類型a進(jìn)行空判斷,如果a包含一個(gè)值就進(jìn)行解封,否則就返回一個(gè)默認(rèn)值b。

表達(dá)式 a 必須是 Optional 類型。默認(rèn)值 b 的類型必須要和 a 存儲(chǔ)值的類型保持一致。

    a != nil ? a! : b   //這是空合運(yùn)算符的復(fù)雜寫法

當(dāng)可選類型 a 的值不為空時(shí),進(jìn)行強(qiáng)制解封(a!),訪問(wèn) a 中的值;反之返回默認(rèn)值 b。

    let c = "hehe"

    var d : String?

    let e = d ?? c

    print(e) //打印出來(lái)為 "hehe"

14.區(qū)間運(yùn)算符
*閉區(qū)間運(yùn)算符 :a...b
包含a到b(包括a和b)

    for index in 1...5{

        print(index)

    }

*半開區(qū)間運(yùn)算符:a..<b
包含a到b但不包括b

15.邏輯運(yùn)算符

· 非!a 

· 與a && b 

· 或a || b

 


原文來(lái)自:簡(jiǎn)書/我叫萬(wàn)萬(wàn)

 

您還未登錄,請(qǐng)先登錄

熱門帖子

最新帖子

?