目录
一、关于Enumerable.Range(Int32, Int32) 方法
2.Enumerable.Range()用于数学计算的操作方法
5.实例3:Enumerable.Range()vs for循环
一、关于Enumerable.Range(Int32, Int32) 方法
1.定义
命名空间:
System.Linq
程序集:
System.Linq.dll
在指定的范围内产生一系列整型数。
public static IEnumerable<int> Range (int start, int count);
参数
start Int32
序列整型数的起始位置
count Int32
序列中要产生的整型数的数量
返回值
IEnumerable<Int32>
指定范围内的一系列整型数
Exceptions
ArgumentOutOfRangeException
count >= 0
-or-
(start+count-1) >= Int32.MaxValue.
2.Enumerable.Range()用于数学计算的操作方法
先定义一个临时变量用于装载数据集,比如IEnumerable<int> squares,再从索引位置1开始枚举产生10个整型数,并定义临时变量x通过select方法指向所产生的整型数,计算x*x,Enumerable.Range(1, 10).Select(x => x * x)。
IEnumerable<int> squares = Enumerable.Range(1, 10).Select(x => x * x);
3.实例1:显示整型数1~9的平方
// 从1开始产生10个序列整型数并计算其平方;
// 遍历输出
namespace ConsoleApp11
{
internal class Program
{
private static void Main(string[] args)
{
ArgumentNullException.ThrowIfNull(args);
IEnumerable<int> squares = Enumerable.Range(1, 10).Select(x => x * x);
foreach (int num in squares)
{
Console.WriteLine(num);
}
}
}
}
/*
运行结果:
1
4
9
16
25
36
49
64
81
100
*/
4.实例2:显示整型数0~9
//使用Enumerable.Range 打印数字0到9
namespace ConsoleApp12
{
internal class Program
{
private static void Main(string[] args)
{
ArgumentNullException.ThrowIfNull(args);
var collection = Enumerable.Range(0, 10);
foreach (var element in collection)
{
Console.WriteLine(element);
}
Console.ReadLine();
}
}
}
//运行结果:
/*
0
1
2
3
4
5
6
7
8
9
*/
5.实例3:Enumerable.Range()vs for循环
(1)使用Enumerable.Range()
// Write the numbers 1 thru 7
namespace ConsoleApp13
{
internal class Program
{
private static void Main(string[] args)
{
ArgumentNullException.ThrowIfNull(args);
foreach (int index in Enumerable.Range(1, 7))
{
Console.WriteLine(index);
}
}
}
}
//运行结果:
/*
1
2
3
4
5
6
7
*/
(2)使用for循环
// Write the numbers 1 thru 7
namespace ConsoleApp14
{
internal class Program
{
private static void Main(string[] args)
{
ArgumentNullException.ThrowIfNull(args);
for (int index = 1; index <= 7; index++)
{
Console.WriteLine(index);
}
}
}
}
//运行结果:
/*
1
2
3
4
5
6
7
*/
(3)再用Enumerable.Range()
//从索引2开始的7个数
namespace ConsoleApp15
{
internal class Program
{
private static void Main(string[] args)
{
ArgumentNullException.ThrowIfNull(args);
foreach (var index in Enumerable.Range(2, 7))
{
Console.WriteLine(index);
}
}
}
}
//运行结果:
/*
2
3
4
5
6
7
8
*/
(4)再用Enumerable.Range()
//Enumerable.Range()
namespace ConsoleApp16
{
class Program
{
private static void Main()
{
Enumerable.Range(1, 7).ToList().ForEach(i => Console.WriteLine(2*i+1));
}
}
}
//运行结果:
/*
3
5
7
9
11
13
15
*/