C#中Enumerable.Range(Int32, Int32) 方法用于计算
目录
一、关于Enumerable.Range(Int32, Int32) 方法
1.定义
2.Enumerable.Range()用于数学计算的操作方法
3.实例1:显示整型数1~9的平方
4.实例2:显示整型数0~9
5.实例3:Enumerable.Range()vs for循环
(1)使用Enumerable.Range()
(2)使用for循环
(3)再用Enumerable.Range()
(4)再用Enumerable.Range()
一、关于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*/