zoukankan      html  css  js  c++  java
  • iOS -Swift 3.0 -String(字符串常规用法)

      1 //
      2 
      3 //  ViewController.swift
      4 
      5 //  Swift-String
      6 
      7 //
      8 
      9 //  Created by luorende on 16/9/10.
     10 
     11 //  Copyright © 2016年 luorende. All rights reserved.
     12 
     13 //
     14 
     15  
     16 
     17 import UIKit
     18 
     19  
     20 
     21 class ViewController: UIViewController {
     22 
     23  
     24 
     25     override func viewDidLoad() {
     26 
     27         super.viewDidLoad()
     28 
     29         // Do any additional setup after loading the view, typically from a nib.
     30 
     31  
     32 
     33  
     34 
     35  
     36 
     37 //        一、定义字符串
     38 
     39    var str1="Hello,Swift." //字符串变量
     40 
     41         let str2="Hello,Swift." //字符串常量
     42 
     43         let str3=" " //空字符串
     44 
     45         let str4 = String() //空字符串
     46 
     47  
     48 
     49 //        二、定义字符
     50 
     51 //        格式:变量关键字和常量关键字  变量 : Character =  字符值
     52 
     53 //        注意点:字符值 必须用双引号括起来, 必须是一个字符
     54 
     55         var char1:Character = "s" //字符变量
     56 
     57         let char2:Character = "s" //字符常量
     58 
     59 //        字符串和字符的关系:字符串是由N个字符组成的,即字符串是字符的集合。
     60 
     61 //        例子:
     62 
     63    let str = "ABC"  //字符串"ABC" 是有 三个字符组成的分别是 字符”A",字符“B",字符”C"
     64 
     65         print("str=(str)")
     66 
     67  
     68 
     69  
     70 
     71 //        三、字符串与字符串的拼接、字符串与字符的拼接
     72 
     73 //        字符串和字符的值可以通过加法运算符 (+) 相加在一起并创建一个新的字符串值:
     74 
     75         let string1 = "Hello"
     76 
     77         let string2 = " Swift"
     78 
     79         let character1: Character = "!"
     80 
     81         let character2: Character = "?"
     82 
     83         let stringAndCharacter = string1 + String(character1) // 等于 "Hello!"
     84 
     85         let stringAndString = string1 + string2 // 等于 "Hello Swift"
     86 
     87         let characterAndString = String(character1) + string1 // 等于 "!Hello"
     88 
     89         let characterAndCharacter = String(character1) + String(character2) // 等于 "!?"
     90 
     91 //        也可以通过加法赋值运算符 (+=) 将一个字符串或者字符添加到一个已经存在字符串变量上:
     92 
     93         var studying = "study my"
     94 
     95         studying += string2
     96 
     97 //        studying 现在等于 "study my Swift"
     98 
     99        
    100 
    101         var welcome = "good morning"
    102 
    103         welcome += String(character1)
    104 
    105         // welcome 现在等于 "good morning!"
    106 
    107 //        注意:不能将一个字符串或者字符添加到一个已经存在的字符变量上,因为字符变量只能包含一个字符。
    108 
    109  
    110 
    111  
    112 
    113  
    114 
    115 //        字符串与其它类型值的连接
    116 
    117         let xx=10
    118 
    119         let yy=10.8
    120 
    121         let str1="(xx)+(yy)=?"
    122 
    123         print(str1) //str1="10+10.8=?"
    124 
    125         let str2=String(format: "%i+%.1f=?", xx, yy)
    126 
    127         print(str2) //str2="10+10.8=?"
    128 
    129  
    130 
    131  
    132 
    133  
    134 
    135  
    136 
    137 //        四、字符串的(插值)插入
    138 
    139 //        字符串插值是一种全新的构建字符串的方式,可以在其中包含常量、变量、字面量和表达式。插入的字符串字面量的每一项都被包裹在以反斜线为前缀的圆括号中:
    140 
    141         let multiplier = 3
    142 
    143  
    144 
    145         let message = "(multiplier) times 2.5 is (Double(multiplier) * 2.5)"
    146 
    147       
    148 
    149         print(message) // message is --> "3 times 2.5 is 7.5"
    150 
    151 //        反斜杠表示插入的意思
    152 
    153 //        在上面的例子中,multiplier 作为 (multiplier) 被插入到一个字符串字面量中。当创建字符串执行插值计算时此占位符会被替换为 multiplier 实际的值。
    154 
    155        
    156 
    157 //        multiplier 的值也作为字符串中后面表达式的一部分。该表达式计算 Double(multiplier) * 2.5 的值并将结果 (7.5) 插入到字符串中。在这个例子中,表达式写为 (Double(multiplier) * 2.5) 并包含在字符串字面量中。
    158 
    159        
    160 
    161 //        注意:您插值字符串中写在括号中的表达式不能包含非转义双引号 (") 和反斜杠 (),并且不能包含回车或换行符。
    162 
    163  
    164 
    165  
    166 
    167  
    168 
    169 //        五、字符串比较
    170 
    171    let str1="Hello,"
    172 
    173         let str2="Swift."
    174 
    175         let str3="Hello,Swift."
    176 
    177         let comp1 = str1==str2  //false   ---> 不等于
    178 
    179         print(comp1)
    180 
    181         let comp2 = str1+str2 == str3   //true   ---> 等于
    182 
    183         print(comp2)
    184 
    185         let comp3 = str1 < str2 //true      ---> 等于
    186 
    187         print(comp3)
    188 
    189         let comp4 = str1 != str2 //true     ---> 等于
    190 
    191         print(comp4)
    192 
    193  
    194 
    195  
    196 
    197  
    198 
    199 //        六、字符串长度的计算
    200 
    201         let str="Hello,Swift."
    202 
    203 //        let len1=count(str) //swift 1.2
    204 
    205         print(len2) //len1=12
    206 
    207        
    208 
    209         let len2=str.characters.count //swift 2.0
    210 
    211         print(len2) //len2=12
    212 
    213  
    214 
    215  
    216 
    217  
    218 
    219  
    220 
    221 //        七、查找字符串是否包含子串Swift
    222 
    223         let str1="Hello,Swift."
    224 
    225         let str2="Swift"
    226 
    227         let range=str1.rangeOfString(str2)
    228 
    229         if range != nil{
    230 
    231             //包含
    232 
    233         }
    234 
    235  
    236 
    237  
    238 
    239  
    240 
    241 //        七、查找字符串indexof
    242 
    243         let str="Hello,Swift."
    244 
    245 //        let range=str.rangeOfString("Swift",options:NSStringCompareOptions.allZeros) //Swift 1.2
    246 
    247         let range=str.rangeOfString("Swift", options: NSStringCompareOptions()) //Swift 2.0
    248 
    249         let strIndex=range?.startIndex
    250 
    251         print(strIndex) //startIndex=3
    252 
    253  
    254 
    255  
    256 
    257  
    258 
    259 //        八、字符串大小写
    260 
    261         //首字母大写capitalized
    262 
    263         let str1="mandarava is a flower."
    264 
    265         str1.capitalizedString
    266 
    267         print(str1) //str1="Mandarava Is A Flower.
    268 
    269        
    270 
    271        
    272 
    273         //转换为大写字母uppercase
    274 
    275         var str2="hello, mandarava."
    276 
    277         str2=str2.uppercaseString
    278 
    279         print(str2)//str1="HELLO, MANDARAVA."
    280 
    281        
    282 
    283         //转换为小写字母lowercase
    284 
    285         var str3="HELLO, MANDARAVA."
    286 
    287         str3=str3.lowercaseString
    288 
    289         print(str3)//str1="hello, mandarava."
    290 
    291  
    292 
    293  
    294 
    295  
    296 
    297 //        九、字符串分割与打断
    298 
    299         let str1="boy, girl, man, woman"
    300 
    301         let str1Array=str1.componentsSeparatedByString(",")
    302 
    303         print(str1Array) //str1Array=["boy", " girl", " man", " woman"]
    304 
    305        
    306 
    307         let str2="boy,girl,man 10 20 30"
    308 
    309         let charset=NSCharacterSet(charactersInString:", ")
    310 
    311     let str2Array=str2.componentsSeparatedByCharactersInSet(charset)
    312 
    313         print(str2Array) //str2Array=["boy", "girl", "man", "10", "20", "30"]
    314 
    315  
    316 
    317 
    318 
    319  
    320 
    321 //        十、字符串的转换(string转换为Int/Long/Float/Double/Bool等)
    322 
    323         let str1="100"
    324 
    325 //        var i=str1.toInt()! //Swift 1.2
    326 
    327         //=100
    328 
    329         let i=(str1 as NSString).integerValue //Swift 2.0
    330 
    331         print(i) //=100
    332 
    333        
    334 
    335         let j=(str1 as NSString).intValue
    336 
    337         print(j) //=100
    338 
    339        
    340 
    341         let l=(str1 as NSString).longLongValue
    342 
    343         print(l) //=100
    344 
    345        
    346 
    347         let str2="10.8"
    348 
    349         let f=(str2 as NSString).floatValue
    350 
    351         print(f) //=10.8
    352 
    353        
    354 
    355         let d=(str2 as NSString).doubleValue
    356 
    357         print(d) //=10.8
    358 
    359        
    360 
    361         let str3="true"
    362 
    363         let b=(str3 as NSString).boolValue //=true
    364 
    365         print(b) //=true
    366 
    367        
    368 
    369  
    370 
    371  
    372 
    373 //        十一、字符串的遍历 (for in)
    374 
    375 //        说明: for in  是一个遍历语句
    376 
    377     /**
    378 
    379           1: for 后面跟临时变量   in 后面跟数组
    380 
    381           2: 临时变量 不需要定义, 编译器成自动生成一个临时变量
    382 
    383           3:for in 会遍历字符集合,然后把每个集合赋值临时变量
    384 
    385           */
    386 
    387     let A = "ABC"
    388 
    389         /*
    390 
    391          1:str 是字符串变量 是字符集合
    392 
    393          2:temp是临时变量
    394 
    395          3:for in 会遍历 字符集合,然后把每个集合赋值临时变量temp
    396 
    397          */
    398 
    399  
    400 
    401 // Swift 1.2
    402 
    403 //        for temp in str{
    404 
    405 //          print(temp)
    406 
    407 //      }
    408 
    409        
    410 
    411 // Swift 2.0
    412 
    413         for temp  in A.characters {
    414 
    415             print(temps)
    416 
    417         }
    418 
    419         /**
    420 
    421         运行结果
    422 
    423         A
    424 
    425         B
    426 
    427         C
    428 
    429          */
    430 
    431  
    432 
    433  }
    434 
    435  
    436 
    437     override func didReceiveMemoryWarning() {
    438 
    439         super.didReceiveMemoryWarning()
    440 
    441         // Dispose of any resources that can be recreated.
    442 
    443     }
    444 
    445 
    446 
    447 }
  • 相关阅读:
    二分法模板
    二分答案模板
    51nod 1010 只包含因子2 3 5的数
    三次握手和四次挥手(面试必问)
    TCP协议和UDP协议
    纯CSS3画出小黄人并实现动画效果
    正则表达式里字符串”不包含”匹配技巧
    12个C语言面试题,涉及指针、进程、运算、结构体、函数、内存,看看你能做出几个!
    使用jTopo给Html5 Canva中绘制的元素添加鼠标事件_html5教程技巧
    程序猿们,快用Emoji表情写代码吧
  • 原文地址:https://www.cnblogs.com/luorende/p/5862383.html
Copyright © 2011-2022 走看看