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

C# —— List数组

int[] a = new int[] { 1, 2, 3 };//array静态数组
ArrayList aa = new ArrayList();// d动态数组

 List 集合和ArrayList基本一样,只不过List是C#2.0版本新加入的泛型类型。List也可以通过索引操作里面的元素,也有对List记性增删改查操作 

 List构建List 

 var list = new List<int>();// 定义整形的集合
 var list2 = new List<int>() { 2, 3 }; 

1.添加元素 

list.Add(1);
list.Add(2);
list.AddRange(list2);Console.WriteLine(string.Join(",",list.ToArray()));// toArray , 把list转换成Array

2查询元素
            // 通过索引值查询

Console.WriteLine(list[2]);

 3删除元素

list.Remove(1);// 删除指定元素
            // list.RemoveAt(2);// 删除指定位置元素
            // list.RemoveRange(0,2); // 删除指定范围内的元素, 参数1是开始删除的  索引值 参数2是删除的个数;
            // it代表集合所有的元素,便利一个作用
            // Contains()
            // 删除满足条件的所有元素, int2包含list的元素删除掉

list.RemoveAll(it=>list2.Contains(it));// 参数是一个函数,函数吧满足匹配条件的元素全部删除 

4 插入 

list.Insert(0,100);// 在索引值为0插入100元素

 5 修改 

 list[0] = 200;

 6 清空集合方法

 list.Clear();

  7 排序

list.Sort();

 8 indexOf() 获取元素的索引值 不存在为-1

 Console.WriteLine(list.IndexOf(200));

总结

Array 静态数组
             * ArrayList 动态数组
             * List 集合
             * 1.Array是容量是固定的,但是 ArrayList容量可根据需要自动扩充。修改 删除 插入等操作
             * 2.Array可以是多个维度,但是 ArrayList只具有一个维度
             * 3.在大多数情况下List类执行的更好并且比ArrayList更安全,不用向ArrayList进行拆箱装箱操作 (就是类型转换操作,对象类型和基本数据类型转换操作)

相关文章:

  • HTML跨年烟花
  • Flutter基础 -- Flutter布局练习(小项目)
  • python-doipclient 源文档翻译
  • 在编程Python的时候发生ModuleNotFoundError: No module named distutils报错怎么办
  • 07_查找
  • Crosslink-NX器件应用连载(9): USB3.0相机
  • 私有云和多云管理平台 | Cloudpods v3.11.4 正式发布
  • CSS学习笔记之高级教程(五)
  • 目标检测-AnyLabeling标注格式转换成YOLO格式
  • BottomSheetDialog高度自适应,布局RecyclerView使用问题
  • Mac下删除系统自带输入法ABC,正解!
  • Mysql中表的常用约束
  • 从零开始:如何用Electron将chatgpt-plus.top 打包成EXE文件
  • RabbitMQ启动报错:Error during startup: {error, {schema_integrity_check_failed,
  • 我是大学生,应该选系统运维方向,还是web开发方向?
  • [ 一起学React系列 -- 8 ] React中的文件上传
  • 【159天】尚学堂高琪Java300集视频精华笔记(128)
  • android图片蒙层
  • angular2 简述
  • CSS中外联样式表代表的含义
  • HTML5新特性总结
  • in typeof instanceof ===这些运算符有什么作用
  • Iterator 和 for...of 循环
  • Otto开发初探——微服务依赖管理新利器
  • PHP面试之三:MySQL数据库
  • Twitter赢在开放,三年创造奇迹
  • 理清楚Vue的结构
  • 罗辑思维在全链路压测方面的实践和工作笔记
  • 适配iPhoneX、iPhoneXs、iPhoneXs Max、iPhoneXr 屏幕尺寸及安全区域
  • 手机app有了短信验证码还有没必要有图片验证码?
  • 微服务核心架构梳理
  • 原生 js 实现移动端 Touch 滑动反弹
  • 进程与线程(三)——进程/线程间通信
  • ​MPV,汽车产品里一个特殊品类的进化过程
  • ​虚拟化系列介绍(十)
  • #define
  • #define,static,const,三种常量的区别
  • #前后端分离# 头条发布系统
  • (10)STL算法之搜索(二) 二分查找
  • (delphi11最新学习资料) Object Pascal 学习笔记---第14章泛型第2节(泛型类的类构造函数)
  • (附源码)springboot家庭财务分析系统 毕业设计641323
  • (四)c52学习之旅-流水LED灯
  • (四)汇编语言——简单程序
  • (转)memcache、redis缓存
  • (转)甲方乙方——赵民谈找工作
  • .NET Conf 2023 回顾 – 庆祝社区、创新和 .NET 8 的发布
  • .NET Core 2.1路线图
  • .net core 使用js,.net core 使用javascript,在.net core项目中怎么使用javascript
  • .NET/C# 编译期间能确定的相同字符串,在运行期间是相同的实例
  • .Net中wcf服务生成及调用
  • .NET中统一的存储过程调用方法(收藏)
  • .net专家(高海东的专栏)
  • @AutoConfigurationPackage的使用
  • @Autowired @Resource @Qualifier的区别
  • @RestControllerAdvice异常统一处理类失效原因