如何简化代码或移除foreach循环?寻求更优实现方案
优化方案:简化代码并移除foreach循环
核心优化点
- 移除冗余的
Any()判断和foreach循环,用LINQ+string.Join实现更简洁的逻辑 - 替换低效的
string +=拼接方式,避免频繁内存分配
最简优化代码
var message = string.Join("", myList.Select(item => $"{item.HusbandFirstName} is married to {item.WifeFirstName}"));
说明
- 自动处理空列表:当
myList为空时,string.Join会直接返回空字符串,和原代码逻辑完全一致,无需额外判断Any() - 更高性能:
string.Join内部使用StringBuilder实现拼接,比循环里用string +=的内存效率高得多(后者每次拼接都会生成新字符串对象) - 灵活扩展:如果需要给每个婚姻关系条目添加分隔符(比如换行、逗号),只需修改
string.Join的第一个参数即可,例:
// 每个条目换行显示 var message = string.Join(Environment.NewLine, myList.Select(item => $"{item.HusbandFirstName} is married to {item.WifeFirstName}"));
内容的提问来源于stack exchange,提问作者DevelopmentIsMyPassion
相关产品推荐
相关产品推荐

