当前位置: 首页 > article >正文

LINQ (C#) 中的限定符运算:全部All、任意Any、包含Contains

限定符运算返回一个 Boolean 值,该值指示序列中是否有一些元素满足条件或是否所有元素都满足条件。

下图描述了两个不同源序列上的两个不同限定符运算。 第一个运算询问是否有任何元素为字符“A”。 第二个运算询问是否所有元素都为字符“A”。 这两种方法在此示例中都返回 true

1、全部(All)

以下示例使用 All 查找在所有考试中得分均超过 70 的学生。

IEnumerable<string> names = from student in students
                            where student.Scores.All(score => score > 70)
                            select $"{student.FirstName} {student.LastName}: {string.Join(", ", student.Scores.Select(s => s.ToString()))}";

foreach (string name in names)
{
    Console.WriteLine($"{name}");
}

// This code produces the following output:
//
// Cesar Garcia: 71, 86, 77, 97
// Nancy Engström: 75, 73, 78, 83
// Ifunanya Ugomma: 84, 82, 96, 80

2、任意(Any)

以下示例使用 Any 查找在任何考试中得分超过 95 的学生。

IEnumerable<string> names = from student in students
                            where student.Scores.Any(score => score > 95)
                            select $"{student.FirstName} {student.LastName}: {student.Scores.Max()}";

foreach (string name in names)
{
    Console.WriteLine($"{name}");
}

// This code produces the following output:
//
// Svetlana Omelchenko: 97
// Cesar Garcia: 97
// Debra Garcia: 96
// Ifeanacho Jamuike: 98
// Ifunanya Ugomma: 96
// Michelle Caruana: 97
// Nwanneka Ifeoma: 98
// Martina Mattsson: 96
// Anastasiya Sazonova: 96
// Jesper Jakobsson: 98
// Max Lindgren: 96

3、包含(Contains)

以下示例使用 Contains 查找在某场考试中得分正好为 95 的学生。

IEnumerable<string> names = from student in students
                            where student.Scores.Contains(95)
                            select $"{student.FirstName} {student.LastName}: {string.Join(", ", student.Scores.Select(s => s.ToString()))}";

foreach (string name in names)
{
    Console.WriteLine($"{name}");
}

// This code produces the following output:
//
// Claire O'Donnell: 56, 78, 95, 95
// Donald Urquhart: 92, 90, 95, 57


http://www.kler.cn/a/417421.html

相关文章:

  • js-对象-JSON
  • linux常用基础命令 最新1
  • ZooKeeper单节点详细部署流程
  • 【3】高并发导出场景下,服务器性能瓶颈优化方案-文件压缩
  • DeepSeek 部署过程中的问题
  • 免费PDF 转换成 Word、PPT、Excel 格式的工具
  • Ajax、Fetch、Axios、XMLHttpRequest 的关系与区别
  • Python应用实战--制作网络稳定性监控自动化脚本
  • 电商项目--分布式文件存储FastDFS搭建
  • 游戏引擎学习第28天
  • 基于JSP+MySQL的网上招聘系统的设计与实现
  • Hive 数据模型 与 Hive SerDe(序列化与反序列化)
  • web安全攻防入门教程
  • 计算机毕业设计PySpark+Scrapy农产品推荐系统 农产品爬虫 农产品商城 农产品大数据 农产品数据分析可视化 PySpark Hadoop
  • 复杂网络(四)
  • 爱尔兰杀菌剂数据分析_1
  • Figma入门-组件变体
  • 速盾:高防cdn的搜索引擎回源是什么?
  • 5G基础学习笔记
  • vscode的项目给gitlab上传
  • [免费]SpringBoot+Vue景区订票(购票)系统【论文+源码+SQL脚本】
  • Jenkins构建gitlab自动发布IIS
  • SE16N 外键校验报错问题
  • 软件工程之动态建模
  • Flutter:列表分页,上拉加载下拉刷新,在GetBuilder模板使用方式
  • 鸿蒙NEXT元服务:收藏、卡片、用户协议、隐私声明、分享链接、评分与评论