最近码墙时发现了一个很有意思的问题,定义一个引用对象,如果在循环外面定义对象,在循环里list.add(对象),最后的结果却是所有的对象值都是一样的,即每add一次,都会把之前所有的数据覆盖掉,蛮有趣的,在网上轻松的搜到了答案,把对象在循环里new就行了,问题虽然解决了,但感觉这里面包含了一些.net底层存储的知识,有关于引用类型和值类型的存储方式问题,写了个demo总结了一下,水平,有大牛发现demo中有不足之处还请指正. 如下面两图: 图1:在外面定义对象a,调试界面中可以看到,i=4时,之