使用LINQ填充List
问题的原因是Enumerable.Range
方法需要两个参数,即起始值和计数值。在给定的代码中,只传入了一个参数,导致编译错误。
解决方法是将代码中的Enumerable.Range(0, 10)
修改为Enumerable.Range(0, 0)
,即将起始值参数设为0。这样就能正确地使用LINQ方法Select
和ToLis
t来填充List
集合。修改后的代码如下:
var r = new Random(); var l = Enumerable.Range(0, 0).Select(x => r.Next(100) - 50).ToList();
通过这样的修改,就能确保代码能够正确编译,并且使用LINQ方法填充List
集合。
问题的出现原因:原帖中的提问者不知道如何使用LINQ中的Select方法和Enumerable.Range方法一起来填充一个List
解决方法:其他回复者提供了一个解决方案,使用LINQ的Select方法和Enumerable.Range方法来填充List
Random rnd = new Random(); List<int> = Enumerable.Range(0,10).Select(n => rnd.Next(-50, 51)).ToList();
这个解决方法被其他回复者认可并赞同。提问者之后也表示对重复数字不关心,如果需要避免重复数字,可以先使用普通的Range方法,然后再对列表进行洗牌。