阅读量:0
在C#中,你可以将for循环与LINQ(Language Integrated Query)结合使用,以便在遍历集合时对其进行筛选、排序和投影等操作。以下是一些示例:
- 使用for循环和LINQ筛选:
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); } } }
- 使用for循环和LINQ排序:
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); } } }
- 使用for循环和LINQ投影:
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结合使用,以便在遍历集合时对其进行筛选、排序和投影等操作。