news 2026/10/28 5:37:03

数组的查询方法

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
数组的查询方法

查询目的 通过数组查询一些满足条件(相等、不等等)的元素
有一些方法属于Array静态的方法 使用Array.方法()
有一些方法属于非静态方法使用对象。方法名(),需要去创建对象

1 FindIndex() :根据参数2的条件返回第一个满足条件元素的索引值

FindIndex() 其实他的的功能已经实现了遍历功能,并且把元素传递到参数2函数中
参数1:传递数组
参数2:是一个函数,里面的代码是匹配条件,是有bool返回值,并且有一个参数 这个参数数组里面每一个元素。 例如找年龄大于18的元素的索引

//Main里面 Console.WriteLine(Array.FindIndex(ages,FindBig18)); Console.WriteLine(Array.FindIndex(new string[] {"张三","李四","王五","马六","小二" },FindName)); //与Main同级 static bool FindBig18(int v) { //V就是每一个元素 ages[i] return v > 18;//如果v大于18 返回true , 如果v<18 返回false } static bool FindName(string v) { return v == "张三" ; }

2 FindAll() 找到满足条件所有的元素 返回是一个数组(参数1是数组 参数2检索条件的函数)

int[] arr = Array.FindAll(ages,FindEven);

3 ForEach()循环遍历(参数1 遍历的数组参数2 是一个遍历函数,v就是每一个元素)

Array.ForEach(arr, v => Console.WriteLine(v));

4 Find 找到满足条件的元素

bool FindStart(string v) { return v.StartsWith("s"); } Console.WriteLine(Array.Find(new string[] { "ss", "ssr", "a", "b", "f" }, FindStart));

5 FindLast() 从后面找 找到满足条件的元素

bool FindLast(string v) { return v.StartsWith("s"); } Console.WriteLine(Array.FindLast(new string[] { "ss", "ssr", "a", "b", "f" }, FindStart));

6 TrueForAll() 数组的元素是不是都满足一个条件,如果都满足 为true,只要一个不满足返回值为false

bool sas(int v) { return v < 30; } Console.WriteLine(Array.TrueForAll(ages, sas));

7 Exists() 数组里面是否窜在满足条件的元素,存在一个满足条件即可

Console.WriteLine(Array.Exists(ages, sas));

8 Any() 满足条件有一个即可 等同于Array.Exist()

string[] names = new string[] { "ss", "ssr", "a", "b", "f" }; Console.WriteLine(names.Any(FindLast));

9 All() 所有的元素都得满足条件 整体结果为true, 等同域 Array.TrueForAll()

Console.WriteLine(names.All(FindLast));

10 Contains() 数组是否包含这个元素

Console.WriteLine(names.Contains("abcd")+"++++++");

11 Concat() 串联两个数组

string[] ss = { "2", "3" }; foreach (string time in names.Concat(ss)) { Console.WriteLine(time+"------"); }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/27 14:05:36

终极Marlin固件配置指南:从零开始快速上手

终极Marlin固件配置指南&#xff1a;从零开始快速上手 【免费下载链接】Marlin Marlin 是一款针对 RepRap 3D 打印机的优化固件&#xff0c;基于 Arduino 平台。 项目地址: https://gitcode.com/GitHub_Trending/ma/Marlin 还在为3D打印机固件配置头疼吗&#xff1f;每次…

作者头像 李华
网站建设 2026/10/27 5:27:32

图数据库性能卡顿怎么办,MCP DP-420 Agent优化方案全解析

第一章&#xff1a;图数据库性能卡顿的根源分析 图数据库在处理高度关联数据时展现出强大优势&#xff0c;但在实际应用中常出现查询延迟、响应缓慢等性能卡顿问题。其根本原因往往隐藏在数据模型设计、索引策略、硬件资源及查询语句优化等多个层面。 数据模型设计不合理 当节…

作者头像 李华
网站建设 2026/10/28 2:07:21

电子书阅读器翻页动画如何创造沉浸式阅读体验

电子书阅读器翻页动画如何创造沉浸式阅读体验 【免费下载链接】readest Readest is a modern, feature-rich ebook reader designed for avid readers offering seamless cross-platform access, powerful tools, and an intuitive interface to elevate your reading experien…

作者头像 李华
网站建设 2026/10/28 4:13:13

从零掌握GRPO:让语言模型学会“团队协作“的强化学习方法

从零掌握GRPO&#xff1a;让语言模型学会"团队协作"的强化学习方法 【免费下载链接】course The Hugging Face course on Transformers 项目地址: https://gitcode.com/gh_mirrors/cou/course 还在为语言模型的生成质量不稳定而烦恼吗&#xff1f;&#x1f91…

作者头像 李华
网站建设 2026/10/27 13:37:43

Vue新手必看:为什么我的组件会有属性警告?

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 创建一个面向初学者的交互式教程&#xff0c;解释Vue组件属性传递机制。包含&#xff1a;1) 简单的HelloWorld组件示例 2) 故意添加class属性触发警告 3) 分步引导思考为什么会出现…

作者头像 李华