linq来个轻松点的

newxdlysk 2012-05-11 10:00:54

直接上码

(from x in Enumerable.Range(1, 9)
from y in Enumerable.Range(1, x)
select new { x, y }).ToList().ForEach(x => Console.Write("{0}*{1}={2}\t"+(x.x==x.y?"\n\r":""), x.y, x.x, x.x * x.y));
Console.Read();
...全文
171 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
何年 2012-05-15
  • 打赏
  • 举报
回复
执行效率。
风一样的大叔 2012-05-15
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 的回复:]

new b()!
[/Quote]
  • 打赏
  • 举报
回复
感觉可读性和性能没有for循环好
IT-Style 2012-05-15
  • 打赏
  • 举报
回复
这样我感觉可读性没有For 循环嵌套好.
imfor 2012-05-15
  • 打赏
  • 举报
回复
new b()!
五更琉璃 2012-05-15
  • 打赏
  • 举报
回复
虽然我不用LINQ 不过能把它练成这样也挺不错的
anzhiqiang_touzi 2012-05-15
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 的回复:]
执行效率。
[/Quote]
liuxibei1987 2012-05-15
  • 打赏
  • 举报
回复
for (int i = 1; i <= 9; i++)
{
for (int j = 1; j <= i; j++)
{
if (j == i)
Console.Write("{0}*{1}={2}\n\r", i, j, i * j);
else
Console.Write("{0}*{1}={2}\t", i, j, i * j);
}
}

嵌套for循环
(from x in Enumerable.Range(1, 9)
from y in Enumerable.Range(1, x)
select new { x, y }).ToList().ForEach(x => Console.Write("{0}*{1}={2}\t" + (x.x == x.y ? "\n\r" : ""), x.y, x.x, x.x * x.y));

用linq来写,感觉可读性还有性能上linq都没嵌套for循环好。
但是linq肯定有linq的好处了,哪个大侠来谈谈
古龙老子 2012-05-15
  • 打赏
  • 举报
回复
各有所长吧
zh6335901 2012-05-12
  • 打赏
  • 举报
回复
不错。。不过我觉得这个例子还是直接循环比较好
大肥 2012-05-12
  • 打赏
  • 举报
回复
牛逼啊,看不懂
threenewbee 2012-05-11
  • 打赏
  • 举报
回复
不错。linq在很大程度上可以代替循环。

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧