使用 LINQ 并行查询生成随机偶数的 C# 程序
LINQ 被称为语言集成查询,是在 .NET 3.5 中引入的。它使 .NET 语言能够生成或创建查询以从数据源中检索数据。在本文中,我们将使用 LINQ 并行生成随机偶数。因此,我们将使用 ParallelQuery{TSource} 在给定范围内并行生成整数序列。除此之外,我们还必须使用 where 和 select 子句来获取偶数。请记住,如果 stop 小于 0 或 start +stop-1 大于 MaxValue,它将抛出 ArgumentOutOfRangeException。
句法:
IEnumerable variable = ((ParallelQuery)ParallelEnumerable.Range(start,
stop)).Where(x => x % 2 == 0).Select(i => i);
其中start是序列中的第一个整数值,而stop是要生成的连续整数的数量。
例子:
Input : Range(start, stop) = Range(1, 20)
Output :
2
6
12
16
4
8
14
18
10
20
Input : Range(start, stop) = Range(10, 20)
Output :
10
12
14
16
18
20
22
24
26
28
方法:
To print even numbers in parallel follow the following steps:
- Implement a parallelQuery{TSource} and mention the range.
- Use where clause to check the modulus of y by 2 is equal to zero.
- Now Select is used to check if the value of the j variable is greater than or equal to the value of the variable(i.e., j).
- Iterate the even numbers using the foreach loop
例子:
C#
// C# program to generate random even numbers
// using LINQ Parallel Query
using System;
using System.Collections.Generic;
using System.Linq;
class GFG{
static void Main(string[] args)
{
// Creating data
IEnumerable data = ((ParallelQuery)ParallelEnumerable.Range(
// Condition for generating even numbers
10, 20)).Where(i => i % 2 == 0).Select(
value => value);
// Display even numbers
foreach(int even in data)
{
Console.WriteLine(even);
}
}
}
输出:
12
14
16
18
20
22
24
26
28
10