美文网首页程序员
swift学习-字符串,数组-12/21

swift学习-字符串,数组-12/21

作者: littlersmall | 来源:发表于2016-01-04 19:52 被阅读31次

    中午实在没有时间看书,只有晚上8点开始看了一会。收获还是挺大的,了解了不少,越发觉得swift是一门不错的语言。它在前有的基础上,规避了太多的问题,某种意义上来说,确实是站在了巨人的肩上。
    以后有时间了也要好好看下object-c,都是从c一脉相承的,问题应该不大。
    今天看到80页了,还是挺快的哦。
    1 字符串比较,可以使用『==』比较字符串。前缀,后缀相等,可以使用hasPrefix和hasSuffix来检查字符串是否拥有特定的前缀或后缀。
    例如:

    let a = "abcd"
    let b = "abcd"
    
    print(a == b)
    print(a.hasPrefix("abc"))
    print(b.hasSuffix(“bc"))
    

    你还可以通过uppercaseString和lowercaseString来获得一个字符串的大写,小写版本
    例如:

    let normal = "Could you help me, please"
    let shouty = normal.uppercaseString
    let whispered = normal.lowercaseString
    
    print(normal, shouty, whispered)
    

    2 数组。swift的数组类型(字典和集合也一样)的类型必须明确,它们被实现为泛型集合。这一点和python有很大的不同,需要特别注意。
    如果使用var创建数组,那么数组的大小和内容都是可变的,如果使用let创建,则大小和内容都不可被改变。
    注意:swift中如果使用类似 var a = [1, “abc”, 3.5]这样类型不明确的方式来创建数组时,数组的类型将为NSObject[]类型,应该是兼容object-c的方式,字典类型也相同。后面再详细研究NSObject类型吧。
    例如:

    var array = [1, "abc", 2.5]
    var arrayInt:[Int] = [1, 2]
    
    arrayInt[1] = 3;
    array.append(3.5)
    
    var dic = [1 : 2.5, "abc" : 3, 4.5 : 2, 4 : "string"] //dict 类型为自动推断的[NSObject : NSObject]
    
    dic[1] = 2.5
    dic[1] = nil //删除元素 or dic.removeValueForKey(<#T##key: Key##Key#>)
    
    var someInts = [Int]()
    
    someInts.append(1)
    someInts += [2]
    someInts += [3,4,5,6]
    someInts[3...4] = [3, 4] //将数组的3-4修改为[3,4],不能在[3-4]不确定的状态下使用,会出问题
    
    print(someInts)
    

    插一句题外的,今天过的不太开心。特别反感被某些在其位不谋正事的人职务绑架。低头,忍之,任之。
    继续努力。

    相关文章

      网友评论

        本文标题:swift学习-字符串,数组-12/21

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