c# – 为什么只有字符串是不可变的而不是其他数据类型
发布时间:2020-12-15 22:07:35 所属栏目:百科 来源:网络整理
导读:我总是想知道什么是可变性.为什么.net设计人员只开发了stringbuilder类来实现字符串类的可变性.考虑到int而不是int的intbuilder无论数据类型如何,字符串都以完全相同的方式实现. 解决方法 许多其他语言为字符串提供了类似的设计:带有 StringBuffer和 String
我总是想知道什么是可变性.为什么.net设计人员只开发了stringbuilder类来实现字符串类的可变性.考虑到int&而不是int的intbuilder无论数据类型如何,字符串都以完全相同的方式实现.
解决方法
许多其他语言为字符串提供了类似的设计:带有
StringBuffer和
StringBuilder的Java,带有
StringBuilder的Scala,带有MutableString
though there are other,beter solutions in Python的Python.在C字符串中是可变的,因此不需要构建器.
构造符存在于字符串的原因是: >许多语言将字符串定义为不可变(任何更改都需要内存中的新对象) int不存在构建器的原因: >它本身就是简单的数据结构 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |