ArrayList實(shí)現(xiàn)了System.Collections空間下的IEnumerable接口,這個(gè)接口是非泛型的。如果要使用LINQ,必須聲明枚舉變量的類型,依賴Cast查詢運(yùn)算符轉(zhuǎn)換枚舉類型。 using System; using System.Collections; using System.Collections.Generic; using System.Data; using System.IO; using System.Linq; namespace ConsoleApp4 { class Program { static void Main(string[] args) { var arrayList = GetArrayList(); //查詢表達(dá)式 var query = from Student student in arrayList where student.Scores[0] > 95 select student; //方法調(diào)用 var query2 = arrayList.Cast<Student>().Where(x => x.Scores[0] > 95); } static ArrayList GetArrayList() { ArrayList arrList = new ArrayList { new Student { FirstName = "Svetlana", LastName = "Omelchenko", Scores = new int[] { 98, 92, 81, 60 } }, new Student { FirstName = "Claire", LastName = "O’Donnell", Scores = new int[] { 75, 84, 91, 39 } }, new Student { FirstName = "Claire", LastName = "O’Donnell", Scores = new int[] { 75, 84, 91, 39 } },new Student { FirstName = "Cesar", LastName = "Garcia", Scores = new int[] { 97, 89, 85, 82 } }}; return arrList; } } public class Student { public string FirstName { get; set; } public string LastName { get; set; } public int[] Scores { get; set; } } }
|
|