麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

強大的swift字符串

2019-11-14 18:07:57
字體:
來源:轉載
供稿:網友

  Swift集百家之長,吸收了主流語言java,c,c++等的好的特性,所以它功能十分強大,今天我們就來看看它強大的字符串。

 

 首先,我們帶著這樣幾個問題去了解、理解swift的字符串。

1、swift字符串怎么初始化的?

2、swift字符串長度可變嗎?

3、swift字符串是指針,還是實際的值?

4、swift有哪些特性?

 

下面,我來一一解答這些問題。

(1) swift 字符串的初始化有2種方式,這兩種方式的結果都是一樣的。我們來初始化一個空字符串。

  

  

  var str1 = ""    //  第一種方式

  

  var str2 = String()   //     第二種方式

當初始化一個非空字符串時,可以這樣   var str3 = "hello Word",這里要說明的是,“”里的值可以是任意符號,數字,文字,字母....

 

 

(2) swift字符串長度是可變的,當然這只針對于用var 定義的字符串,用let定義的字符串常量是不可變的。正因為這個特性,它可以和其他字符,字符串通過符號“ = ”、“ += ”組合成新的字符串。

  

  var str1 = "hello"  

  var str2 = "world"

  var str3:Character = "!"  //這是定義字符的方式

  

  

  var strs1 = str1 + str2     //結果為“hello word”

  

  var strs2 = strs1 + str3  //結果為“hello word!”

 

(3)swift字符串 是實際的值,不是指針。當把字符串變量賦值給另一個值,它原來的值不變。當把字符串變量當作參數傳遞時,它也是一個實際的值。

  

  var str1 = "你好"

  

  var str2 =  str1

這時,str1的值還是“你好”,由此可見,它不是指針,是一個實際的值。

(4)swift字符串有哪些特性?它的比較機制,驗證機制,遍歷機制,轉換機制,組合機制,都是它的特性。

    a、比較機制。字符串之間的比較是可以分多樣的。

           它比較完全相等時,用“==”來連接;

         它比較前綴相等時,給定一個字符串前綴,然后用要比的字符串,調用hasprefix方法,參數為給定的前綴;

         它比較后綴相等時,給定一個字符串后綴,然后用要比的字符串,調用hasSuffix方法,參數為給定的后綴。

 

      舉個例子,我們學校在開興趣班,要統計各個興趣班的人數有多少?用這個就可以很容易的找出來。

 

      let students =["ios,謝明,s3sj101","android,胡軍,s3jn95","ios,都美君,s3jn95","技術支持,高小龍,s3jn92","數據庫,阿斯,s3jn92","數據庫,封劍,s3j101"]

  

      要統計出 各個興趣班的人數,只需這樣做:

      var ios = 0  //定義ios班的人數

      var android = 0   //定義android班的人數

      var technical = 0  //定義技術支持班的人數

      var database = 0  // 定義數據庫班的人數

 

       for student in students  {

        

        if student.has

             ios++

        }

 

        if student.hasPrefix("android") {

           android++

        }

 

        if student.hasPrefix("技術支持") {

           technica++

        }

 

        if student.hasPrefix("數據庫") {

           database++

        }

     }

      

print(“報ios班的人數/(ios)”)

print(“報android班的人數/(android)”)

print(“報技術支持班的人數/(technica)”)

print(“報數據庫班的人數/(database)”)

 

如果我們要統計各個原班有多少人,可以這樣做:

 

      let students =["ios,謝明,s3sj101","android,胡軍,s3jn95","ios,都美君,s3jn95","技術支持,高小龍,s3jn92","數據庫,阿斯,s3jn92","數據庫,封劍,s3j101"]

  

     

      var s3sj95 = 0  //定義s3sj95班的人數

      var s3jn92 = 0   //定義s3jn92班的人數

      var s3j101 = 0  //定義s3j101班的人數

  

 

       for student in students  {

        

        if student.hasSuffix("s3sj95") {

             s3sj95++

        }

 

        if student.hasSuffix("s3jn92") {

           s3jn92++

        }

 

        if student.hasSuffix("s3j101") {

           s3j101++

        }

     }

      

print(“s3sj95班的人數/(s3sj95)”)

print(“s3jn92班的人數/(s3jn92)”)

print(“s3j101班的人數/(s3j101)”)

 

  b:驗證機制。判斷一個字符串是不是為空,我們可以用isEmpty屬性獲取

 

    var  str = " "

 

     if str.isEmpty {

       print("str是空字符串")

     }else{

      print("str是非空字符串")

    }

 

    執行結果為:str是空字符串

 

  c:遍歷機制。我們知道,字符串是有字符組成,swift可以遍歷字符串中的每個字符。

  

    var str = "helloWord"

 

    for char in sre {

      print("/(char)")

    }

  

  執行結果會把每個字符遍歷出來。

 

  d:轉換機制。它還支持字符串的大小寫轉換。通過uppercaseString和lowercaseString屬性可以做到,我們來看看:

 

  var  str = "helloWord"

  

  var  upper = " "  // 定義一個存放轉化為大寫后的變量

  var lower = " "   //// 定義一個存放轉化為小寫后的變量

  

  upper = str.uppercaseString

  lower = str.lowercaseString

  

  然后分別輸出就行了 ,很簡單吧。。。

  

  

  e:組合機制.組合機制是它很大的一個亮點,它的長度是可變的,因此也是可以組合的。這給我們的開發帶來很大的遍歷,是我們開發者的福音哦。

  

  這里就不舉例了,他們之間可以通過“+”、“+=”、也可以通過一個合法的表達式生成新的字符串。最后,它還可以計算字符串的總長度,

  需要用到的方法是:countElements。參數為要計算的字符串本身。

 

  

 好了,今天的分享就到這。希望可以幫到剛剛學習ios或者想要學ios的朋友們,我也是新手,有不足和不對的地方求大神指正。讓我們一同進步!大家可以關注我的微博http://www.companysz.com/lb0129/

 


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 久久亚洲美女视频 | 久久激情小视频 | 国产99免费 | 中日韩免费视频 | 免费在线观看中文字幕 | 亚洲国产精品一 | 91精品国产网站 | 蜜桃网在线 | 国产精品美女久久久免费 | 天天透天天狠天天爱综合97 | 久久久久久久久成人 | 国产精品成人一区二区三区电影毛片 | 一区二区三区欧洲 | 久久91久久久久麻豆精品 | 欧美一区在线观看视频 | 亚洲第一色片 | 久久影院国产精品 | 91经典视频 | 色吧综合网 | 无遮挡一级毛片视频 | 欧美精品在线视频观看 | 国内精品国产三级国产a久久 | 精品国产一区二 | 99视频观看 | 日韩 综合 | 日韩视频在线不卡 | 欧美精品一区二区三区在线 | 日本在线播放一区二区三区 | 亚洲精品动漫在线观看 | 欧美日本综合 | a集毛片| 黄网站免费观看视频 | 国产精品免费久久久久久 | 成人福利视频网站 | 精品一区二区三区不卡 | 国产亚洲在 | 国产亚洲精品久久久久久久久 | fc2国产成人免费视频 | 成人一级片毛片 | 亚洲国产精品久久久久婷婷老年 | gogo全球大胆高清人露出91 |