美文网首页swift
swift——字符串

swift——字符串

作者: 阿凡提说AI | 来源:发表于2017-02-25 17:47 被阅读56次

    字符

    在Swift中,字符是字符串的基本组成单位,隶属于Character类型。字符可以是一个字母、数字、汉字或者符号,并使用双引号包裹住,例如“A” "1" "中" “*”等。字符定义的基本格式如下所示。

    let/var 名称:Character = "值"
    let ch:Character = "A"
    

    常见的转义字符

    \t    水平制表符
    \n    换行
    \r    回车
    \"    双引号
    \'    单引号
    \\    反斜线
    

    字符串

    在Swift中,字符串是由N个字符连接而成的,字符串使用String类型表示,可以包含任意字符,并且这些字符必须饱汉子一对双引号之内。

    初始化字符串

    1.通过字面量赋值的方式初始化字符串

    let tempString = "this is a temp string"
    

    2.通过创建String实例的方式初始化字符串

    let anotherString = String()
    

    String类提供了一个isEmpty属性,用于判断字符串是否为空。

    if anotherString.isEmpty{
          print("啥也没有")
    }
    

    字符串的基本操作

    1.获取字符串的长度
    第一种是调用lengthOfBytes方法,该方法用于获取字符串中字节的个数;另一种是直接计算字符的个数

    import UIKit
    let string = "HelloWorld"
    let len1 = string.lengthOfBytes(using:Sting.Encoding.utf8)
    print(len1)
    let len2 = string.characters.count
    printf(len2)
    

    2.字符串的遍历

    let string = "Hello World!"
    for c in string.charcters{
            print(c)
    }
    

    3.连接字符串和字符
    (1)使用加法赋值运算符连接字符串
    通过使用加法赋值运算符(+=),可以将一个字符串连接到某个已经存在的可变字符串的末尾位置。

    var varString = "hello,"
    varString += "world"
    print(varString)
    

    (2)使用加法运算符拼接字符串
    除了加法赋值运算符之外,还可以使用加法运算符(+)将两个或多个字符串相加在一起,创建一个新的字符串。

    let string1 = "hello"
    let string2 = "world"
    var string3 = string1 + string2
    print(string3)
    

    (3)通过append方法追加字符串
    通过调用append方法,将一个字符附加到一个可变字符串的尾部。

    let character:Character = "!"
    string3.append(character)
    print(string3)
    

    4.字符串插值
    字符串插值是一种构建新字符串的方式,可以在其中包含常量、变量、字面量和表达式,插入的字符串字面量的每一项都在以反斜线为前缀的小括号中。

    let multiplier = 3
    // 将multiplier插入到字符串中
    let message = "\(multiplier)乘以2.5等于\(Double(multiplier)*2.5)"
    print(message)
    

    需要注意的是,插值字符串中写在括号中的表达式不能包含非转义反斜杠(\)、回车符或换行符。
    5.格式字符串

    import UIKit
    let hour = 8
    let minute = 5
    let seconds = 6
    // 按照format的格式来显示arguments的内容
    let dateString = String(format:"%02d:%02d:%02d",arguments:[hour,minute,seconds])
    print(dateString)
    // 按照format的格式拼接hour、minute、seconds的内容
    let dateString2 = String(format:"%02d:%02d:%02d",hour,minute,seconds)
    print(dateString2)
    

    第6行调用的构造函数需要传入两个参数,format表示拼接字符串的格式,arguments表示用于拼接的内容;第10行调用的构造函数与第6行类似,只是第2个参数无须按照数组的形式传递,而是直接使用逗号将内容逐个添加到后面即可。
    5.字符串的截取

    import UIKit
    let string = "HelloWorld"
    // 将string转换为OC的字符串使用,并根据范围来截取子串
    let subString = (string as NSString).substring(with:NSMakeRange(1,5))
    print(subString)
    

    6.字符串的比较
    (1)比较字符或者字符串是否相等
    比较字符或者字符串可以使用等于操作符(==)和不等于操作符。
    (2)比较字符串的前缀和后缀
    Swift提供了hasPrefix和hasSuffix两个方法,用来检查字符串是否拥有特定的前缀和后缀。
    比较String和NSString
    (1)String是一个结构体类型,而NSString是一个集成自NSObject基类的对象。
    (2)两者都可以使用自己的类名直接进行初始化,从表面上看写法相同,但是NSString的意思是初始化了一个指针指向了这个字符串,但是String是把字符串的字面量赋值给常量和变量。

    相关文章

      网友评论

        本文标题:swift——字符串

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