【发布时间】:2015-10-02 19:18:01
【问题描述】:
我想分配字符串的第一个字符。当然有一个高级功能,但对我(我来自 C++)来说,简单地使用 [index] 会更容易阅读。所以我为String类型定义了一个扩展:
extension String {
subscript (i: Int) -> Character {
return self[advance(self.startIndex, i)]
}
subscript (i: Int) -> String {
return String(self[i] as Character)
}
...
这适用于以下情况:
if (s[0] == "u")
但是当像这样分配这个值时
var c = s[0]
我得到一个错误,编译器不能用 int 类型为 String 下标。 但是区别在哪里呢?
【问题讨论】:
标签: string swift int subscript