美文网首页
使用Character

使用Character

作者: 小金_1180 | 来源:发表于2018-06-20 14:56 被阅读0次

        可以使用for-in循环迭代一个字符串来访问每一个字符值:

            for character in "Dog!🐶" {

                print(character)

            }

            // D

            // o

            // g

            // !

            // 🐶

        你可以创建一个单独的Character常量或者变量,使用只包含了一个字符的字符串字面量,并且在常量或者变量后面提供Character类型标注;

            let exclamationMark: Character = "!"

        String值可以通过传入一个Character数组来构建:

            let catCharacters: [Character] = ["C", "a", "t", "!", "🐱"]

            let catString = String(catCharacters)

            print(catString)

            // 打印 "Cat!🐱

    字符串和字符    

        字符串可以通过加符运算符相加创造一个新的字符串:

            let string1 = "hello"

            let string2 = " there"

            var welcome = string1 + string2

            // welcome 现在是 "hello there"

        你也可以使用加法运算符把一个字符串添加到另外一个字符串后面:

            var instruction = "look over"

            instruction += string2

            // instruction 现在是 "look over there”

        也可以用字符串的append方法把一个字符添加到另一个字符串后面:

            let exclamationMark: Character = "!"

            welcome.append(exclamationMark)

            // welcome 现在是 "hello there!”

    NOTE:不可以把一个字符串或者字符添加到另外一个字符的后面,字符是只可以包含一个字符。

        也许你使用多行字符串字面量创建了一个有很多行的长字符串,并且你希望每一行的结尾都有一个换行符,也包括最后一行。比如:

            let badStart = """

            one

            two

            """

            let end = """

            three

            """

            print(badStart + end)

            // 打印出2行:

            // one

            // twothree

            let goodStart = """

            one

            two

            

            """

            print(goodStart + end)

            // 打印出3行:

            // one

            // two

            // three

        上面的代码中,把badStartend连接成个了一个打印出2行的字符串,当然这是不符合我们的需求的。究其原因,badStart的最后一行不是以换行符结尾的,这一行直接和end的第一行连接在了一起。相反的是,goodStart的每一行都是以换行符结尾的,所以和end连接之后可以打印出三行,这是我们需要的结果。

    字符串插入

        字符串插入是一种创建新字符串的方式,这种方式可以把常量,变量,字面量甚至是表达式包含在一个字符串字面量中。字符串插入在单行和多行字符串字面量中都可以使用。每一个你插入的元素都被一组括号包围,且有前缀反斜杠(\):

            let multiplier = 3

            let message = "\(multiplier) times 2.5 is \(Double(multiplier) * 2.5)"

            //  3 times 2.5 is 7.5

        上面的例子中,multiplier的值以 \(multiplier)的方式被插入到了字符串字面量中,这是一个占位符,当字符串字面量被求值的时候会被替换成multiplier真正的值,并且创建一个真正的字符串。

        multiplier也同时是上面字符串字面量的中一个表达式的一部分,这个表达式计算Double(multiplier) * 2.5的结果,并且把结果7.5插入到字面量中。在这里,表达式以\(Double(multiplier) * 2.5)的方式被插入到字面量中。

    NOTE:使用字符串插入的时候,括号中的表达式里面不可以包含未转移的斜杠,回车,或者换行。当然,它们是可以包含在其他字符串字面量中的。

    相关文章

      网友评论

          本文标题:使用Character

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