Swift中的append函数如何工作? [英] How does append function work in Swift?
问题描述
有人可以解释我这句话有什么问题。
Can someone explain me what is wrong with this statement.
var someString = "Welcome"
someString.append("!")
但是当我将代码替换为
var someString = "Welcome"
let exclamationMark : Character = "!"
someString.append(exclamationMark)
预先感谢
推荐答案
在Swift中,没有字符文字(例如C语言衍生的'c'
) ,只有 String
个文字。
In Swift, there is no character literal (such as 'c'
in C-derived languages), there are only String
literals.
然后,您在 String上定义了两个函数
s:追加
,以附加单个字符,<< c $ c> extend ,以附加整个字符串。这样就可以了:
Then, you have two functions defined on String
s: append
, to append a single character, and extend
, to append a whole String. So this works:
var someString = "Welcome"
someString.extend("!")
如果您真的想使用 append
,则可以强制一个字符的 String
文字可以通过调用 Character $转换为
Character
c $ c>的构造函数:
If you really want to use append
, you can force a one-char String
literal to be turned into a Character
either by calling Character
's constructor:
someString.append(Character("!"))
或使用类型转换:
someString.append("!" as Character)
或在您使用类型注释时做了一个额外的变量:
or by using a type annotation as you did with an extra variable:
let exclamationMark: Character = "!"
someString.append(exclamationMark)
这篇关于Swift中的append函数如何工作?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!