如何生成将5添加到起始编号的数字列表?

upd*_*dev -3 c# visual-studio-2010 c#-4.0 .net-4.5

这是一个简单的问题,但我想确保我做得对!

我想生成数字列表,我从数字3开始,并为每个下一个数字添加5.

结果应该是这样的:

var list = new List<int> { 3, 8, 13, 18, 23, 28 ..... 103 };
Run Code Online (Sandbox Code Playgroud)

我的代码:

var uniqueInts = new List<int>();
addBy = 5;

for (int i = 3; i < 1000; i++) 
{ 
   uniqueInts.Add(addBy); 
}
Run Code Online (Sandbox Code Playgroud)

我是否正确尝试或有任何简单的方法?

key*_*rdP 7

for循环索引增加5而不是1.

for (int i = 3; i < 10000; i += 5) 
{ 
   uniqueInts.Add(i); 
}
Run Code Online (Sandbox Code Playgroud)


Joa*_*son 5

仅作比较,这是使用Linq的方法.在这种情况下,我认为我更喜欢你的循环:)

var list = Enumerable.Range(0, 21).Select(x => x*5+3).ToList();
Run Code Online (Sandbox Code Playgroud)

编辑:不确定你的评论是什么意思,想要输出为"var list = ...",但如果你想要字符串(即源代码)作为输出,你可以使用Linq聚合;

string str = Enumerable.Range(0, 21).
    Aggregate(new StringBuilder("var list = new List<int> {"), 
    (builder, i) => builder.Append(i*5+3 + ", ")).Append("};").ToString();
Console.WriteLine(str);
Run Code Online (Sandbox Code Playgroud)