在C#中,你可以将for循环与LINQ(Language Integrated Query)结合使用,以便在遍历集合时对其进行筛选、排序和投影等操作。以下是一些示例:
using System;
using System.Collections.Generic;
using System.Linq;
class Program
{
static void Main()
{
List<int> numbers = new List<int> { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
// 使用for循环和LINQ筛选大于5的数字
List<int> result = new List<int>();
for (int i = 0; i < numbers.Count; i++)
{
if (numbers[i] > 5)
{
result.Add(numbers[i]);
}
}
// 使用LINQ筛选大于5的数字
var resultWithLINQ = numbers.Where(x => x > 5);
Console.WriteLine("使用for循环的结果:");
foreach (int num in result)
{
Console.WriteLine(num);
}
Console.WriteLine("\n使用LINQ的结果:");
foreach (int num in resultWithLINQ)
{
Console.WriteLine(num);
}
}
}
using System;
using System.Collections.Generic;
using System.Linq;
class Program
{
static void Main()
{
List<int> numbers = new List<int> { 5, 3, 9, 1, 7 };
// 使用for循环和LINQ排序
for (int i = 0; i < numbers.Count - 1; i++)
{
for (int j = 0; j < numbers.Count - 1 - i; j++)
{
if (numbers[j] > numbers[j + 1])
{
int temp = numbers[j];
numbers[j] = numbers[j + 1];
numbers[j + 1] = temp;
}
}
}
// 使用LINQ排序
var resultWithLINQ = numbers.OrderBy(x => x);
Console.WriteLine("使用for循环的结果:");
foreach (int num in numbers)
{
Console.WriteLine(num);
}
Console.WriteLine("\n使用LINQ的结果:");
foreach (int num in resultWithLINQ)
{
Console.WriteLine(num);
}
}
}
using System;
using System.Collections.Generic;
using System.Linq;
class Program
{
static void Main()
{
List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };
// 使用for循环和LINQ投影
List<int> squares = new List<int>();
for (int i = 0; i < numbers.Count; i++)
{
squares.Add(numbers[i] * numbers[i]);
}
// 使用LINQ投影
var resultWithLINQ = numbers.Select(x => x * x);
Console.WriteLine("使用for循环的结果:");
foreach (int square in squares)
{
Console.WriteLine(square);
}
Console.WriteLine("\n使用LINQ的结果:");
foreach (int square in resultWithLINQ)
{
Console.WriteLine(square);
}
}
}
这些示例展示了如何在C#中将for循环与LINQ结合使用,以便在遍历集合时对其进行筛选、排序和投影等操作。