news 2026/4/17 6:37:59

【无标题】ArrayList与list

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【无标题】ArrayList与list

ArrayList:动态数组一个不固定长度的数组集合,并且可以存储不同类型的元素,例如一个arrryList对象可以存储整型,字符串,对象,数组等。
但是int[]这种数组一旦创建好之后 不能后续添加元素,也就是长度是固定,并且一个数组对象只能存储一种类型的元素
ArrayList 弊端:取出元素是一个obje 必须对其在进行类型转换

//创建一个arrayList 对象
int[] ints = new int[] { 1, 2, 3 };
People p1 = new People() { Name = "zs" };
ArrayList arr = new ArrayList() { 1, 2, 3, "坤拳",true, ints,p1};//初始化添加元素

// 2 取出元素 通过索引值取元素 arr[1]
//int aa = arr[0];//数组取出的元素是object类型,如果想转成其他类型,必须强制转换
Console.WriteLine(Convert.ToInt16(arr[1]));

//3清空元素
arr.Clear();

//4添加元素
arr.Add(1);
arr.Add("说得好");//添加一个元素
arr.AddRange(ints);//也可以添加一个数组

//5删除元素
arr.Remove("说得好");//删除指定元素
arr.RemoveAt(0);//删除指定位置元素
arr.RemoveRange(0,3);//从指定参数1位置开始删除个数的元素

//6 数组插入
arr.Add(12);
arr.Add(24);
arr.Insert(1, 36);//在参数1这个位置插入参数2这个元素
//arr.InsertRange(0,ints); //在指定位置插入一个数组

//7修改
arr[1] = 48;
//8数组排序
arr.Sort();//默认的是升序排序

//9 IndexOf()元素的索引值
Console.WriteLine(arr.IndexOf(48));

//10 count 获取数组的个数
Console.WriteLine(arr.Count);

//11.Reverse()把数组里面的元素进行倒序
arr.Reverse();

//12 toArry();把ArryList 转成Array(int [])
object [] ii =arr.ToArray(); //Array int

//ArrayList类; arr 对象
//8查询可以查询一个arr[1],查询多个for遍历
//最后算法遍历元素
//如果数组元素类型不一样遍历的时候把类型改为object
foreach (object i in arr)
{
Console.WriteLine(i+"-------");
}

ArrayList动态数组 存储元素类型object类型,取出的时候转成对应的类型,类型不安全

List:方法和ArryList很像 区别在于list可以指定类型进行存储,存储同一种类型数据,取出时候不用强制转换,保证数据类型安全
List<int>list1=new List<int>();//创建集合对象

//1添加元素
list1.Add(1);
list1.Add(2);
list1.Add(3);
list1.AddRange(new int[] { 9, 10, 1 });//添加多个

//2删除
list1.Remove(11);//删除指定元素
list1.RemoveAt(list1.Count - 1);//删除指定位置的元素
list1.RemoveAll(v =>v%3== 0);//删除满足条件所有的元素
//3 修改
list1[0] = 999;

//4插入数据
list1.Insert(1, 888);//在索引值为1的地方插入888

//5 Indexof()获取元素的索引值
Console.WriteLine(list1.IndexOf(8888));

//6 Clear()清空集合
//list1.Clear();清空集合

//7Any()有一个满足条件就为true
Console.WriteLine(list1.Any(v => v > 888));

//8 Average()求序列中元素的平均值
Console.WriteLine(list1.Average());
//9 Concat()拼接俩个数组,返回的是一个新数组
list1.Concat(new int[] { 36});
//10 Contains()数组是否包含2
Console.WriteLine(list1.Contains(2));

//11Sum()求和
Console.WriteLine(list1.Sum());

//12 Skip()跳过自定的个数,返回剩余的
//list1.Skip(1);
int[] ss = list1.Skip(1).ToArray();

//13 Max 找出序列元素最大值
Console.WriteLine(list1.Max());

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

VoxCPM-0.5B:无标记化语音合成的技术革命与商业应用

VoxCPM-0.5B&#xff1a;无标记化语音合成的技术革命与商业应用 【免费下载链接】VoxCPM-0.5B 项目地址: https://ai.gitcode.com/OpenBMB/VoxCPM-0.5B 在语音合成技术快速发展的今天&#xff0c;传统基于离散标记的方法面临着自然度瓶颈和计算效率挑战。VoxCPM-0.5B作…

作者头像 李华
网站建设 2026/4/16 17:45:09

Dify离线部署:AI如何助力本地化开发环境搭建

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 创建一个Dify离线部署的AI辅助开发工具&#xff0c;支持自动检测本地环境依赖、一键部署Dify服务、智能配置调优。功能包括&#xff1a;1. 环境兼容性检查 2. 离线包自动下载和解压…

作者头像 李华
网站建设 2026/4/11 22:52:06

MeiliSearch零基础入门:10分钟搭建第一个搜索服务

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 创建一个最简单的MeiliSearch入门示例&#xff0c;包含&#xff1a;1. Docker方式启动MeiliSearch服务 2. 用Python脚本导入示例数据集&#xff08;如电影标题和简介&#xff09;3.…

作者头像 李华
网站建设 2026/4/16 14:07:47

patchwork:正经生信人拼图谁用AI啊?

01写在前面 最近画了几张热图&#xff0c;准备拿AI拼一拼&#xff08;没错我就是那个不正经的生信人&#xff09;&#xff0c;无奈图片太大&#xff0c;AI读进去就卡的动不了&#xff0c;被迫只能用R语言拼图&#xff0c;不过patchwork用起来是真香&#xff0c;基本上你在R中可…

作者头像 李华
网站建设 2026/4/17 4:39:50

3D模型压缩革命:5分钟掌握Draco核心技术实战指南

3D模型压缩革命&#xff1a;5分钟掌握Draco核心技术实战指南 【免费下载链接】draco Draco is a library for compressing and decompressing 3D geometric meshes and point clouds. It is intended to improve the storage and transmission of 3D graphics. 项目地址: htt…

作者头像 李华
网站建设 2026/4/16 14:14:11

IoTSharp终极部署指南:快速构建企业级物联网平台

IoTSharp作为开源物联网平台的核心价值在于为企业提供完整的设备管理、数据采集和实时监控解决方案。通过本指南&#xff0c;您将掌握从零开始部署IoTSharp的最优路径&#xff0c;无论选择Docker容器化还是源码编译&#xff0c;都能在30分钟内完成平台搭建。 【免费下载链接】I…

作者头像 李华