swift入門第一章常量、變量

1.常量和變量

與C、OC不同的是,swift用let定義常量,用var定義變量。
如下例:
let a = 5
var b = 10
這裏a代表常量5,一旦被定義,它的值就不能被修改。b代表變量10,它可以被修改。如:
我們可以把b重賦值爲20
b = 20

2.在同一行中定義多個常量或者變量

    var x = 5, y = 6, z = 7
    let a = "a", b = "b", c = "c", d = "d"
同時打印多個對象
    println((x, y, z, a, b, c, d)) 

3.類型標註

聲明瞭一個String類型的變量名字叫做nameString
    var nameString: String
    nameString = "abcdefg"
    println((nameString))
常量
    let count: Int
    count = 10
    println((count))
變量
    var number: Int
    number = 20
    println((number))
    number = 5
    println((number))

4.常量、變量的命名(不能以數字開頭,可以放在中間或結尾)

    let x = "zxcv"
    let _name = "name"
    println((x))

5.輸出常量和變量

使用字符串插值的方式,把當前變量名當做佔位符加入到字符串中,然後加上括號和反斜槓將其轉義輸出
用 \()來拼接字符, \後不能加空格
    var juiceName = "apple Juice"
    println("I Love \(juiceName)")
    var iosDevice = "iphone6"
    println("I want a \(iosDevice)")

6.註釋

    //單行註釋
    /*
        多行註釋(OC中不允許下面的多行嵌套註釋)
    */

    /*
        這是第一個多行註釋的開頭
    /*
        這是第二個多行註釋的開頭

        這是第二個多行註釋的結尾
    */
        這是第一個多行註釋的結尾
    */

7.分號(默認不添加)

在一行中需要添加多個獨立語句的時候必須要添加分號
    var d = "dog"; println(d)
    let abc = 10; println((abc))

8.整數(8,16,32,64位 有符號和無符號整數)

    Int8.min 與 INT8_MIN一樣
    Int8.max 與 INT8_MAX一樣

8位有符號整數

    let minInt8 = Int8.min//最小值
    let maxInt8 = Int8.max//最大值
    println((minInt8, maxInt8))

8位無符號整數

    let minUInt8 = UInt8.min
    let maxUInt8 = UInt8.max
    println((minUInt8, maxUInt8))

16位有符號整數

    let minInt16 = Int16.min//最小值
    let maxInt16 = Int16.max//最大值
    println((minInt16, maxInt16))

16位無符號整數

    let minUInt16 = UInt16.min
    let maxUInt16 = UInt16.max
    println((minUInt16, maxUInt16))

32位有符號整數

    let minInt32 = Int32.min//最小值
    let maxInt32 = Int32.max//最大值
    println((minInt32, maxInt32))

32位無符號整數

    let minUInt32 = UInt32.min
    let maxUInt32 = UInt32.max
    println((minUInt32, maxUInt32))

64位有符號整數

    let minInt64 = Int64.min//最小值
    let maxInt64 = Int64.max//最大值
    println((minInt64, maxInt64))

64位無符號整數

    let minUInt64 = UInt64.min
    let maxUInt64 = UInt64.max
    println((minUInt64, maxUInt64))

9.Float(精確到小數點後5位)

    var π : Float
    π = 3.1415926
    println((π))

10.Double(精確到小數點後14位)

    var π1 : Double
    π1 = 3.1415926535897932384626433832795028841971
    println((π1))

11.類型安全

自動推斷成string類型(以後賦值只能用string類型)
    var str = "iphone"
自動推斷成Int類型(以後賦值只能用Int類型)
    var value = 42

12.類型推斷(推斷浮點型時總是推斷成Double類型)

自動推斷成Double類型
    let pi = 3.1415926
    let psdu = 5 + 1.45354

13.數值類型轉換

    let value1: UInt16 = 3200
    let value2: UInt8 = 7
兩種不同數值類型不能直接進行相加的操作,因爲類型不匹配
錯誤:let value3 = value1 + value2
    let value3 = value1 + UInt16(value2)
    println((value3))

14.類型別名

給現有類型起一個更有意義的名字
Int默認代表64位有符號整形
    typealias audioSample = Int
    let maxValue = audioSample.max
    println((maxValue))

15.Bool類型

    let haha = true
    let heihei = false
    if haha {
        println(haha)
    }
    if !heihei {
        println(heihei)
    }

16.元組數據的訪問方式

    let http404Error = (404, "Not Found")
    let (messageCode, message) = http404Error
    println("this is status code \(messageCode)")
    println("this is status message \(message)")
通過下標訪問
    println("this is status code \(http404Error.0)")
    println("this is status message \(http404Error.1)")
如果只需要一部分元組,分解的時候可以把要忽略的部分用_標記
    let (justNeedStatusCode, _) = http404Error
    println("this is status code \(justNeedStatusCode)")

    let http200Status = (statusCode: 200, message: "ok")
    println("this is status \(http200Status.0)")
    println("this is status \(http200Status.message)")

17.可選類型

    let possableNumber = "123a"
converNumber被推斷爲”Int?”或者是Optional Int
    let converNumber = possableNumber.toInt()
    println((converNumber))
    if let number = possableNumber.toInt() {
        println("\(possableNumber) has an integer value of \(number)")
    } else {
        println("\(possableNumber) could not convered integer")
    }

18.斷言

    let age = -3
    assert(age >= 0, "A person's age could not be less than zero")
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章