我知道两者都是什么,价值和参考,但我的问题是为什么两者都存在?
我的意思是为什么所有原语都没有被引用(或被引用)?我知道原语不受垃圾收集器的影响,我认为这是一个缺点,我找不到它们的优点,所以我想念什么?
答案 0 :(得分:2)
我的意思是为什么所有原语都没有被引用(或被引用)?我知道原始数据不受垃圾收集器的影响,我认为这是一个缺点
请考虑以下非常通用代码:
for (var i = 0; i < 1000; i++)
for (var j = 0; j < 1000; j++)
现在想象一下,每秒调用一次……那将是每秒创建的1000万个引用类型,这些引用类型必须在堆中分配,跟踪并由GC收集。您会认为这是一个优势吗?再想一想...
答案 1 :(得分:0)
我可以迅速提出的两个原因:
答案 2 :(得分:0)
我知道原语不受垃圾收集器的影响,我认为这是一个缺点,
为什么?您喜欢更多的开销和更低的性能?我使用得当,值类型和不依赖垃圾回收器是非常重要的性能优势。