美文网首页
Swift 多行字符串字面量

Swift 多行字符串字面量

作者: 赵哥窟 | 来源:发表于2020-07-20 16:50 被阅读0次

字符串字面量

你可以在代码里使用一段预定义的字符串值作为字符串字面量。字符串字面量是由一对双引号包裹着的具有固定顺序的字符集。

字符串字面量可以用于为常量和变量提供初始值:

let someString = "Some string literal value"

注意someString常量通过字符串字面量进行初始化,Swift 会推断该常量为String类型。

多行字符串字面量

如果你需要一个字符串是跨越多行的,那就使用多行字符串字面量 —— 由一对三个双引号包裹着的具有固定顺序的文本字符集:

let quotation = """
The White Rabbit put on his spectacles.  "Where shall I begin,
please your Majesty?" he asked.

"Begin at the beginning," the King said gravely, "and go on
till you come to the end; then stop."
"""

一个多行字符串字面量包含了所有的在开启和关闭引号(""")中的行。这个字符从开启引号(""")之后的第一行开始,到关闭引号(""")之前为止。这就意味着字符串开启引号之后(""")或者结束引号(""")之前都没有换行符号。(译者:下面两个字符串其实是一样的,虽然第二个使用了多行字符串的形式)

let singleLineString = "These are the same."
let multilineString = """
These are the same.
"""

如果你的代码中,多行字符串字面量包含换行符的话,则多行字符串字面量中也会包含换行符。如果你想换行,以便加强代码的可读性,但是你又不想在你的多行字符串字面量中出现换行符的话,你可以用在行尾写一个反斜杠(\)作为续行符。

let softWrappedQuotation = """
The White Rabbit put on his spectacles.  "Where shall I begin, \
please your Majesty?" he asked.

"Begin at the beginning," the King said gravely, "and go on \
till you come to the end; then stop."
"""

为了让一个多行字符串字面量开始和结束于换行符,请将换行写在第一行和最后一行,例如:

let lineBreaks = """

This string starts with a line break.
It also ends with a line break.

"""

一个多行字符串字面量能够缩进来匹配周围的代码。关闭引号(""")之前的空白字符串告诉Swift编译器其他各行多少空白字符串需要忽略。然而,如果你在某行的前面写的空白字符串超出了关闭引号(""")之前的空白字符串,则超出部分将被包含在多行字符串字面量中。

在上面的例子中,尽管整个多行字符串字面量都是缩进的(源代码缩进),第一行和最后一行没有以空白字符串开始(实际的变量值)。中间一行的缩进用空白字符串(源代码缩进)比关闭引号(""")之前的空白字符串多,所以,它的行首将有4个空格。

相关文章

  • Swift 5.x String初始化、定义

    1. 字面量初始化字符串 1.1 单行字面量字符串 1.2 字面量初始化多行字符串 输出结果: 当在多行字符串字面...

  • Swift 多行字符串字面量

    字符串字面量 你可以在代码里使用一段预定义的字符串值作为字符串字面量。字符串字面量是由一对双引号包裹着的具有固定顺...

  • 3、Swift字符串和字符

    字符串字面量 字符串字面量可以用于为常量和变量提供初始值: 多行字符串字面量 如果你需要一个字符串是跨越多行的,那...

  • 3_字符串和字符

    字符串 String 多行字符串字面量 """ 在行尾写一个反斜杠(\)作为续行符。 为了让一个多行字符串字面量...

  • swift 4.0 偏僻的String知识点

    >>>如果你需要很多行的字符串,使用多行字符串字面量。多行字符串字面量是用三个双引号引起来的一系列字符: let ...

  • Swift 3 学习 - 03 字符串和字符

    1 .字符串字面量 String 在Swift中字符串字面量是由双引号" " 包裹着的 像我们在 Swift 3 ...

  • ES6系列 (三)模板字面量

    特性 模板字面量实现字符串插值 模板字面量实现多行字符串 模板字面量实现可重用的模板 理解标记模板字面量如何自定义...

  • Swift4 字符串截取

    Swift 字符串字面量(String literal)介绍 字符串字面量(string literal)是一段双...

  • Strings 和 Characters

    字符字面量(String Literals) 多行字面量 使用 """ 包围字符串 特殊字符 string 是值类...

  • ES6-字符串模板与字符串新增的方法

    ES6模板字面量(template literal) 多行字符串 ES5情况下多行字符串 多行的字符串以 逗号 '...

网友评论

      本文标题:Swift 多行字符串字面量

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