news 2026/5/10 15:44:33

C#数组操作全攻略:引用测试与查询方法

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
C#数组操作全攻略:引用测试与查询方法

第九次

一,数组的引用测试和属性方法

1, 数组的引用测试

int[] ints = new int[] {1,2,3};
int[] ints2 = ints; //赋值关系
ints[0] = 999;
Console.WriteLine(ints2[0]);
Console.WriteLine(ints[0]);

2,方法传递时候对数组引用测试

int[] ints3 = new int[] {1,2,3};
Test1(ints3); //i1 = ints3 赋值过程
Console.WriteLine(ints3[0]); //999

3,数组的属性和方法

string[] namess = {"余1伟","余2伟","余3伟","余4伟"};
string[,] nas = new string[3, 4];//二维数组
Console.WriteLine(namess.Length); //32位数组长度
Console.WriteLine(namess.LongLength); // 64位数字数组长度
Console.WriteLine(namess.Rank); //1维度
Console.WriteLine(nas.Rank);//2维度

4,int [] 数组, 凡是数组都是Array的实例

5,Array.Reverse(namess);//把数组元素颠倒位置

6,Copy 复制()

Array.Copy(namess,nn,4);//把参数一数组赋值到参数二数组 赋值参数3个数

Console.WriteLine(Array.IndexOf(namess,"余1伟")+"--------"); //元素所在的索引值

7,例题

定义一个数组,存储10个People对象(姓名、性别、年龄)要求年龄随机在18-30之间,性别也是随机的 姓名也是随机的

代码:

输出结果:

二,数组的查询方法

1,目的 通过数组查询一些满足条件(相等,不相等)的元素

有些方法属于Array 静态的方法

有些方法属于非静态的方法 使用对象.方法名(), 需先去创建对象

如: Array.Resize(ref args, 0);

2,FindIndex(); 根据参数二的条件 返回第一个满足条件元素的索引值。

FindIndex(); 其实它的功能已经实现了遍历功能, 并且把每个元素传递到参数二函数中

参数1,传递数组,

参数2是一个函数(方法) 里面代码的匹配条件,是一个bool返回值的,并且有一个参数 这个参数是数组里面的每一个元素

功能匹配的条件, 例如找出年龄大于18的元素的索引

3,FindAll() 找出满足所有条件的元素 返回的是一个数组

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

参数一是数组, 参数二是检索条件的函数

4,ForEach() 循环遍历

如: Array.ForEach(arr, v => Console.WriteLine(v+"--------"));

参数1 遍历的数组

参数2 ,是一个函数,v就是每一个元素

5,Find() 找到满足条件的元素

如:bool FindStart(string v )
{
return v.StartsWith("w");
}
Console.WriteLine(Array.Find(new string[] { "ww", "ee", "r", "ddd", "gl", "bb" }, FindStart));

定义方法的地方,如果只用在当前函数中 可以这样定义

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

如:

bool 找到所有满足(int v)
{
return v < 30;
}
Console.WriteLine( Array.TrueForAll(ages, 找到所有满足));

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

Console.WriteLine( Array.Exists(ages, 找到所有满足));//TRUE

8,Any 满足条件有一个即可 等同于ARRAY.EXIST()

如:

string[] names = new string[] { "ww", "ee", "r", "ddd", "gl", "bb" };
Console.WriteLine(names.Any(FindLast1));

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

如: Console.WriteLine(names.All(FindLast1));

10,Contains() 数组是否包含这个元素
Console.WriteLine(names.Contains("abcd")+"--------");

11,Concat 串连两个数组
string[] ss = { "2", "3" };

//string[] sss = (string[])names .Concat(ss);//(string[]) 强制转换成string[]类型//

“ 上文 为本次为第九部分内容,后续将不定时更新,若对主题感兴趣,欢迎订阅获取更新通知.”

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/9 1:03:22

无锡黑锋 HF1841 1MHz 超小型、高效率、同步升压DC-DC变换器技术解析

一、芯片核心定位HF1841 是一款采用同步整流技术的微型、高效率、固定频率升压&#xff08;Boost&#xff09;DC-DC变换器 其核心价值在于 高达95%的转换效率、1MHz的高开关频率 以及 仅60μA的超低静态电流 专为单节/双节碱性/镍氢电池或单节锂电供电的便携设备设计&#xff0…

作者头像 李华
网站建设 2026/5/9 2:53:53

探索电动汽车纵向速度MPC控制器

电动汽车纵向速度MPC控制器。 采用上层控制器和下层控制器。 目标为控制车辆的纵向速度&#xff0c;使其跟踪上期望纵向速度曲线。 ●上层控制器&#xff1a;控制方式为MPC控制器&#xff0c;输入为车辆纵向速度和纵向加速度&#xff0c;输出为期望加速度&#xff0c;并且对加速…

作者头像 李华
网站建设 2026/5/9 2:45:13

基于主从博弈理论的共享储能与综合能源微网优化运行研究复现

【文章复现】《基于主从博弈理论的共享储能与综合能源微网优化运行研究》 区别于网上常规烂大街代码&#xff0c;用自己逻辑进行修改复现 可根据要求进行扩展或改写在能源领域的研究中&#xff0c;基于主从博弈理论的共享储能与综合能源微网优化运行是个相当有趣且有深度的话题…

作者头像 李华
网站建设 2026/5/9 1:32:42

【毕业设计】基于springboot+vue的高校奖学金申报评定管理系统的设计基于springboot高校学生奖学金评定系统的设计与实现(源码+文档+远程调试,全bao定制等)

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华
网站建设 2026/5/9 2:34:08

【毕业设计】基于springboot+vue的新能源汽车信息咨询服务设计和实现基于Java Web的新能源汽车信息咨询服务(源码+文档+远程调试,全bao定制等)

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华
网站建设 2026/5/10 6:34:13

NO15数据结构选择题考点|线性表|栈和队列|串

数据结构的基本概念 数据结构是相互之间存在一种或多种特定关系的数据元素的集合。数据结构的三要素{逻辑结构存储结构数据的运算 \begin{aligned} &\text{数据结构是相互之间存在一种或多种特定关系的数据元素的集合。} \\ \\ &\text{数据结构的三要素} \begin{cases}…

作者头像 李华