快速修改自身的字符串扩展

WebOrCode

我很快就写了我的拳头扩展名。
这是代码:

extension String
{
    // add padding
    // source: http://zh-wang.github.io/blog/2014/09/25/learning-swift-part-6/
    func alignRight(count: Int, pad: Character) -> String
    {
        let amountToPad = count - countElements(self)
        if amountToPad < 1 {
            return self
        }
        let padString = String(pad)
        var string = self
        for _ in 1...amountToPad {
            string = padString + string
        }
        return string
    }
}

这工作正常,我像这样使用它:

let a = "ddd"
let b = a.alignRight(5,  pad: "0") //  b is 00ddd

我想知道是否可以这样做

var a = "ddd"
a.alignRight(5,  pad: "0") //  a is 00ddd

因此,我想进行扩展以更改字符串,而不是更改新字符串。
我有一个问题,因为我无法self = "something"在扩展程序中执行。

这是正常现象还是我缺少了什么?

DCMaxxx

您应该使用mutating关键字。

mutating func alignRight(count: Int, pad: Character) {
// self = something works
}

有关更多信息,请参见扩展的文档

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

来自分类Dev

快速分隔字符串

来自分类Java

扩展压缩字符串

来自分类Dev

快速的字符串排列允许相同的字符串

来自分类Dev

在不使用strings.xml的情况下在Android Studio中快速创建/修改字符串的快捷方式?

来自分类Dev

通过快速修改匹配的字符串使用正则表达式替换匹配项

来自分类Mysql

SQL修改CLOB的字符串

来自分类Dev

创建和修改json字符串

来自分类Dev

Python函数修改字符串

来自分类Dev

合作中的快速文档字符串

来自分类Dev

快速字符串替换出现

来自分类Dev

快速/解析:递增字符串

来自分类Dev

如何快速解析字符串数组?

来自分类Dev

快速字符串匹配MySQL查询

来自分类Dev

R中的快速字符串匹配

来自分类Dev

填充快速字符串以进行打印

来自分类Dev

如何快速处理大字符串?

来自分类Dev

字符串到小数快速

来自分类Dev

RecyclerView的缓存可扩展字符串

来自分类Dev

Powershell此处字符串扩展

来自分类Dev

PHP类扩展字符串变量

来自分类Dev

在字符串变量中扩展通配符

来自分类Dev

字符串类的扩展功能

来自分类Dev

通过索引修改字符串中的字符

来自分类Dev

快速替换3字符串中的字符

来自分类Dev

(快速)如何在字符串中打印“ \”字符?

来自分类Dev

快速将字符转换为字符串

来自分类Dev

快速解析允许转义字符的字符串?

来自分类Dev

如何快速删除字符串中的特定字符或单词?

来自分类Dev

限制通用扩展方法扩展字符串

TOP 榜单

热门标签

归档