Linq操作ArrayList

Posted colorchild

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linq操作ArrayList相关的知识,希望对你有一定的参考价值。

ArrayList实现了System.Collections空间下的IEnumerable接口,这个接口是非泛型的。如果要使用LINQ,必须声明枚举变量的类型,依赖Cast查询运算符转换枚举类型。

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();

            //查询表达式
            var query = from Student student in arrayList
                        where student.Scores[0] > 95
                        select student;

            //方法调用
            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; }
    }
}

 

 

以上是关于Linq操作ArrayList的主要内容,如果未能解决你的问题,请参考以下文章

C#中linq查询结果怎么赋给list或者Arraylist

在 Arraylist 的 listview 的 listitem 上显示值

片段之间的静态 ArrayList

LINQ:为什么这个查询不适用于ArrayList?

获取 Intent 片段上的 Serializable ArrayList

LINQ to XML - 从文件加载 XML 片段