首页 > 代码库 > 浅谈.Net中内置的一种特殊的引用类型 -- String类型
浅谈.Net中内置的一种特殊的引用类型 -- String类型
在.Net内置了两种特殊的引用类型 - Object & String
有关C# String类型究竟是值类型还是引用类型,在很多C#学习者中都或多或少造成过困惑。
string在内存的表示上是引用(如果有C基础就能很好明白),但在实际使用中,.NET把string弄成了值类型。所以不要把string当引用类型看。
.NET中把引用的字符串值类型化的方案是每次对字符串变量赋值,包括字符串相加都是完全开辟新的存储空间给字符串变量使用。所以在使用string类型进行运算时比较消耗资源,此时可以使用stringbuilder类型替代。
C#
string b = "h";b += "ello";
字符串是不可变的,即:字符串对象在创建后,尽管从语法上看您似乎可以更改其内容,但事实上并不可行。 例如,编写此代码时,编译器实际上会创建一个新字符串对象来保存新的字符序列,且新对象将赋给 b。 然后字符串“h”将适宜于垃圾回收。
浅谈.Net中内置的一种特殊的引用类型 -- String类型
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。