具有接收值的扩展

Extension with a receive value

我正在学习 swift 中的扩展,我想为 String 创建一个扩展,就像命令 .hasPrefix() 一样,在该命令中我们发送一个字符串,用于测试它我试试这个代码:

extension String{

    var teste:(String) { return "\(self) - \()" }

}

texto.teste("other String")

但没有用,我想做的就是创建一个扩展,我们可以发送其他值,如 .hasPrefix(在里面发送一个字符串).hasSufix(也发送一个字符串),如何我可以这样做吗?

var teste: String { ... } 是一个 computed 属性,并且是 computed 属性不能带参数。

您需要定义一个扩展方法:

extension String {

    func teste(arg : String) -> String {
        return "\(self) - \(arg)"
    }
}

println("foo".teste("bar"))
// foo - bar