哪个更快/更好?
这个:
List<User> list = new List<User>(); User u; foreach (string s in l) { u = new User(); u.Name = s; list.Add(u); }
或者这个:
List<User> list = new List<User>(); foreach (string s in l) { User u = new User(); u.Name = s; list.Add(u); }
我的新手开发技能告诉我第一个更好,但是我的一个朋友告诉我我错了,但是不能给我第二个更好的理由。
表现上有什么区别吗?
在性能方面,两个示例均编译为相同的IL,因此没有区别。
第二个更好,因为如果u仅在循环内部使用它,则可以更清楚地表达您的意图。
u