为什么在Ruby中有一个String#替换?
发布时间:2020-12-17 03:14:24 所属栏目:百科 来源:网络整理
导读:在浏览 ruby文档时,我发现了 the replace method,但我无法弄清楚这个方法的用例是什么. 我唯一能想到的就是内存管理(如果新字符串的长度小于或等于之前的长度,则不需要重新分配). 有任何想法吗 ? 解决方法 用例实际上就是你想要在其他语言中实现类似pass-by
在浏览
ruby文档时,我发现了
the replace method,但我无法弄清楚这个方法的用例是什么.
我唯一能想到的就是内存管理(如果新字符串的长度小于或等于之前的长度,则不需要重新分配). 有任何想法吗 ? 解决方法
用例实际上就是你想要在其他语言中实现类似pass-by-reference的东西,其中变量的值可以直接改变.因此,您可以将String传递给方法,并且该方法可以将字符串完全更改为其他内容.
但是,您可以通过清空String并将一些新字符串附加到空字符串,以更加圆润的方式实现相同的功能.其他类有类似的方法(参见Array和Hash). 但是,如果你发现自己真的觉得需要使用这些方法,那么很有可能,你已经把自己放在了一个角落,并且应该寻求另一种方法而不是需要改变整个字符串的方法(例如将数据结构传递给方法,而不只是一个字符串). (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |