swift篇第一期:簡單的資料結構

來源:互聯網
上載者:User

標籤:ios swift


首先我們可以去使用Playground來編碼,並且會即時的顯示對應的編碼資訊,這樣我們就不用每次都去運行程式來顯示輸出的東西了哦,也方便了我們對某些語句的驗證,這個是比較贊的


var與let

前者為可變修飾符,後者為不可變

從字面意思我們就可以很好的區分了

 let name = "KuTian"var anotherName = "XiaoHua"anotherName = "KuTianXiaoHua"


常用的類型呢,跟其他語言基本相同啦,主要有幾種:

    1.int類型   2.Float,Double類型    3.String類型     4.Boolean類型

當我們去聲明一個變數的時候,可以選擇初始化它的類型哦

但是在這裡,我們的Bool類型只有true和false哦,至於0和1,我們還是要區分的哦

 var maxValue = UInt8.maxvar minValue = UInt8.minvar doubleValue = 3.14var anotherValue = doubleValue + Double(minValue)var stringValue: String = "swh"var isDouble: Bool = trueif isDouble {    println("true")}


接下來就是簡單介紹一下字串的一些文法

這裡有意思的就是字串可以去加上另一個字串得到一個新的字串

也就是用“+”來拼接字串,所以“+=”也是好用的呢

然後就是它的一些屬性吧

比如:判斷是否為空白,遍曆字串中的字元,統計字串中的字元數量,判斷字串是否相等,判斷是否以**為前尾碼  等等咯

 var name = "sun wanhua"var hello = "Hello "var greet = hello + nameprintln("Hello \(name) !")//我們在輸出的時候,只有變數的話就直接寫,如果在""裡面就要加上\(變數名)var string = "My name is "string += nameprintln(string)var emptyString: String = ""//直接調用字串的方法,用"."文法來調用if emptyString.isEmpty {    println(true)} else {    println(false)}for char in "sunWanhua" {    println(char)}var stringCount = "KuTian"//用count(變數名)來擷取當前變數的長度var strCount = "\(count(stringCount))"println(strCount)var str1 = "sun Wanhua"var str2 = "Sun Wanhua"//這裡我們就不需要用isEqualTo:等文法了哦,直接"=="if str1 == str2 {    println("相等字串")} else {    println("不相等字串")}var preFixString = "lo"var productString = "long long"var nextString = "lang lang"if productString.hasPrefix(preFixString) {    println(true)} else {    println(false)}if nextString.hasSuffix("ng") {    println(true)} else {    println(false)}


接下來就是數組了哦,也是蠻簡單的

 var stoneHero:[String] = ["血法師", "薩滿", "戰士", "德魯伊", "聖騎士", "牧師", "術士", "盜賊", "獵人"]//直接修改數組內元素的值stoneHero[0] = "法師"for hero in stoneHero {    println(hero)}//這裡涉及到新的資料結構:元祖(index , value),我們想象一下(404 , "error")//這裡要是用元祖遍曆,需要把對應關係搞好,那麼數組也需要類似元祖的形式enumerate()for (index , value) in enumerate(stoneHero) {    println("\(value)所在位置為:\(index + 1)")}println(stoneHero.count)if stoneHero.isEmpty {    println(true)} else {    println(false)}stoneHero.append("旅店老闆")stoneHero += ["旅店老闆娘"]//[4...6]應該就是閉區間的意思吧,就是4,5,6//而還有種寫法就是半開區間[4..<6],就是4,5stoneHero[4...6] = ["why", "do"]stoneHero.insert("you", atIndex: 6)stoneHero.removeAtIndex(4)stoneHero.removeLast()//下面的意思就是建立一個數組,且類型、值相同的幾個元素var threeDoubles = [Double](count: 3, repeatedValue: 1.0)var anotherThreeDoubles = Array(count: 3, repeatedValue: 2.5)//相同類型的數組還可以進行互相加減哦var sixDoubles = threeDoubles + anotherThreeDoublesfor value in sixDoubles {    println(value)}


然後呢,就是字典啦,快來看看吧

 var country = ["cn": "中國", "us": "美國", "jp": "日本"]var anotherCountry: Dictionary <String, String> = ["cn": "中國", "us": "美國", "jp": "日本"]var emptyDictionary = [:]//所以說,有了元祖以後,就很好的可以控制字典啦,哈哈,看樣子元祖跟字典是配套玩的咯for (shortName, longName) in country {    var result = shortName + ":" + longName}for shorName in country.keys {    var result = shorName}for longName in country.values {    var result = longName}var shortNameArray = Array(country.keys)var longNameArray = Array(country.values)country["cn"]country["jp"]country.countcountry.updateValue("瓷器", forKey: "cn")country["cn"] = "xiaowang"country.removeValueForKey("cn")country["jp"] = nil


其實資料類型還好啦,跟O-C裡面基本大同小異了,可能寫法更簡單化了哦,應該也不用考慮記憶體的使用了吧,這也讓更多的人好入手了啊,看樣子比較不錯


好啦,就先寫這麼多吧,回頭學習的時候抽時間再來寫哦



本文出自 “東軟iOS校友群的技術部落格” 部落格,請務必保留此出處http://neusoftios.blog.51cto.com/9977509/1669466

swift篇第一期:簡單的資料結構

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.