美文网首页
swift3的第一印象

swift3的第一印象

作者: 茄子_Apple | 来源:发表于2017-05-19 01:40 被阅读10次
    swift study.jpeg

    1.常量和变量
    由于swift中特性的类型推动,不用特意给变量确定类型:
    var 定义变量
    let 定义常量(不被修改)

    2.String类型
    对于String类型,开发者团队最重要的一个设计目标就是尽可能保持这个类型在Unicode上的语意正确.即String已经彻底不再是一个集合类型,而是一个提供了从多个维度展现一个Unicode视图的类型.你可以得到它的多个Characters,可以看到它的UTF-8/UTF-16/Unicode scalar值等.
    彻底忘了String是一个字符数组这样的事情吧!让自己用全新的方式去理解现如今我们需要处理的字符.

    如下为String的一些基本操作:

    let cafe = "Caf\u{00e9}"
    cafe.characters.count //获取字符的个数
    
    cafee.characters.startIndex //获取字符串开始的索引
    cafee.characters.endIndex //获取字符串的结束索引
    
    let index = cafee.index(cafee.characters.startIndex, offsetBy: 3)
    cafee[index] //获取当前索引的字符串
    
    //获取相应范围内的字符串
    let beg = cafee.startIndex
    let end = cafee.index(beg, offsetBy: 3)
    cafee[beg ..< end]
    
    //获取前缀
    String(cafee.characters.prefix(3))
    
    var mixStr = "swift很好玩"
    
    //字符串的遍历
    for (index, value) in mixStr.characters.enumerated() {
        print("\(index) \(value)")
    }
    
    for values in mixStr.characters {
        print("\(values)")
    }
    //字符串的插入
    if let index = mixStr.characters.index(of: "很") {
        mixStr.insert(contentsOf: " 3.0".characters, at: index)
    }
    
    //字符串的替换
    if let cnIndex = mixStr.characters.index(of: "很") {
        mixStr.replaceSubrange(cnIndex ..< mixStr.endIndex, with: " is interesting!")
    }
    
    //字符串切片
    String(mixStr.characters.suffix(12).dropLast())
    //字符串按空格进行分割,得到一个分割后的数组
    mixStr.characters.split(separator: " ").map(String.init)
    
    //如下是按字符分割
    var i = 0
    mixStr.characters.split{ _ in
        if i > 0 {
            i = 0
            return true
        }
        else
        {
            i += 1
            return false
        }
        
    }.map(String.init)
    
    

    相关文章

      网友评论

          本文标题:swift3的第一印象

          本文链接:https://www.haomeiwen.com/subject/wsbexxtx.html