You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C#如何根据学生列表筛选包含指定学生的SchoolClass?

筛选包含指定学生的班级集合

我们需要从schoolClasses集合中筛选出学生列表包含searchedStudents中任意一名学生的SchoolClass实例,通过LINQ的Any方法即可高效实现。

完整代码示例

using System;
using System.Collections.Generic;
using System.Linq;

public class SchoolClass
{
    public List<string> students { get; set; }
}

class Program
{
    static void Main()
    {
        List<string> searchedStudents = new List<string>
        { "Brian","Adrian","Matt","Chloe"};
        
        // 初始化示例班级数据
        List<SchoolClass> schoolClasses = new List<SchoolClass>
        {
            new SchoolClass { students = new List<string> { "Brian", "Zara" } },
            new SchoolClass { students = new List<string> { "Sophie", "Zara" } }
        };
        
        // 核心筛选逻辑
        var filteredClasses = schoolClasses
            .Where(cls => cls.students.Any(student => searchedStudents.Contains(student)))
            .ToList();
        
        // 输出结果验证
        foreach (var cls in filteredClasses)
        {
            Console.WriteLine($"匹配班级的学生:{string.Join(", ", cls.students)}");
        }
    }
}

筛选逻辑说明

  • 遍历每个SchoolClass实例,通过Any方法判断该班级的学生列表中是否存在任意一名学生属于searchedStudents集合
  • 筛选结果:
    • 含"Brian"的班级1会被保留
    • 无匹配学生的班级2会被排除

内容的提问来源于stack exchange,提问作者pop

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 07:45:38