C#知识|泛型集合List相关方法

server/2024/10/18 19:25:14/

哈喽,你好,我是雷工!
以下为泛型集合List相关方法的学习笔记。

01 集合定义

集合定义的时候,无需规定元素的个数。

02 泛型说明

泛型表示一种程序特性,也就是在定义的时候,无需指定特定的类型,而在使用的时候,必须明确类型。

03 泛型的应用场合

可以应用在集合中,方法中 、类中;

04、泛型集合的表示:

05、泛型集合的要求:

添加到集合中的元素类型,必须和泛型集合定义时规定的数据类型完全一致。

在这里插入图片描述

06、泛型List相关示例

示例1:

List<Course>courseList=new List<Course>();
courseList.Add(course10);
courseList.Add(course11);
courseList.Add(course12);
courseList.Add(course13);
courseList.Add(course14);

示例2:使用集合初始化器,将元素一次性的初始化到集合中

List<Course>courseList=new List<Course>(){course10,course11,course12,course13,course14};

示例3:如何将数组中的元素添加到集合中

数组:

Course[] courseArray1=new Course[]{Course>(){course10,course11,course12,course13,course14};

集合:

List<Course>courseList=new List<Course>(){course10,course11,course12,course13,course14};

将数组中的元素添加到集合中代码:

List<Course>courseListFromArray=new List<Course>();
courseListFromArray.AddRange(courseArray1)

示例4:如何将集合能否转换到数组

Course[] courseArray2=courseList.ToArray();

示例5:数组如何直接转换到集合:

List<Course> courseList3=courseArray2.ToList();

示例6:泛型List集合删除元素:

courseList.Remove(course3);//移除courseList集合中的course3元素;
courseList.RemoveAt(3);//移除courseList集合中标号3的元素(标号从0开始);
courseList.RemoveAt(1,3);//移除courseList集合中标号1开始的3个元素;

07 、集合遍历的两种方式:
方式1:

public void TraversalList1(List<Course>courseList)
{for(int i =0;i<=courseList.Count;i++){Console.WriteLine($"{courseList[i].CourseId}\t{courseList[i].CourseName}");}
}

方式2:

public void TraversalList1(List<Course>courseList)
{foreach (Course item in courseList){Console.WriteLine($"{courseList[i].CourseId}\t{courseList[i].CourseName}");}
}

08 、集合快速查询发方法

public void QueryElements(List<Course>courseList)
{//集合查询方法1List<Course> result1= courseList.FindAll(c#>c.CourseId>2024)//集合查询方法2var result2= from c in courseList where c.CourseId>2024 select c;//var在C#中为推断类型,根据赋值的数据推断;  
}

http://www.ppmy.cn/server/33026.html

相关文章

SQL 基础 | AVG 函数的用法

在SQL中&#xff0c;AVG()是一个聚合函数&#xff0c;用来计算某个列中所有值的平均值。 它通常与GROUP BY子句一起使用&#xff0c;以便对分组后的数据进行平均值计算。 AVG()函数在需要了解数据集中某个数值列的中心趋势时非常有用。 以下是AVG()函数的一些常见用法&#xff…

vue路由懒加载是什么

Vue路由懒加载是一种优化技术&#xff0c;旨在减少应用程序的初始加载时间并提高性能。具体来说&#xff0c;它允许我们在用户实际需要访问某个路由时&#xff0c;才加载对应的组件代码&#xff0c;而不是在应用程序启动时一次性加载所有组件。 举个例子来说明Vue路由懒加载的…

CMakeLists.txt语法规则:部分常用命令说明一

一. 简介 前一篇文章简单介绍了CMakeLists.txt 简单的语法。文章如下&#xff1a; CMakeLists.txt 简单的语法介绍-CSDN博客 接下来对 CMakeLists.txt语法规则进行具体的学习。本文具体学习 CMakeLists.txt语法规则中常用的命令。 二. CMakeLists.txt语法规则&#xff1a;…

DDD:根据maven的脚手架archetype生成ddd多模块项目目录结构

随着领域驱动的兴起&#xff0c;很多人都想学习如何进行ddd的项目开发&#xff0c;那ddd的项目结构是怎么样的&#xff1f;又是如何结合SpringBoot呢&#xff1f;那么针对这个问题&#xff0c;笔者使用maven的archetype封装一个相对通用的ddd的项目目录&#xff0c;方便一键生成…

抖音直播间小风车怎么挂?直播间小风车跳转微信怎么开通!

抖音直播已经成为了一个非常受欢迎的直播平台&#xff0c;而在直播间引流也是用户非常关注的一个话题。而针对这个问题&#xff0c;抖音也提供了一种非常好用的小工具——小风车&#xff0c;可以帮助用户在直播间进行引流。那么&#xff0c;抖音直播间小风车怎么挂&#xff1f;…

【开发技巧】青龙面板cookie过期

用青龙面板挂JD时&#xff0c;很多人要求的是通过手机上的特殊的浏览器&#xff08;开放Cookie获取功能的浏览器&#xff09;&#xff0c;例如Alook。但是我使用的是ios系统&#xff0c;就想直接利用电脑上浏览器获取cookie。&#xff08;获取教程有很多&#xff0c;在此笔者就…

【docker问题记录】虚拟机ubuntu22.04使用docker-compose出现容器不能ping通宿主机所在局域网的情况

直接说结论 原因可能是因为这个版本的ubuntu启动后有时会丢失网络图标此时宿主机相当于没有联网&#xff0c;但是docker相关进程已经启动&#xff0c;使用的是无效的网络配置&#xff0c;哪怕此时再用sudo nmcli networking on启动了网络依然docker-compose容器依然无法联网&a…

再学Java基础——IO流

在Java中&#xff0c;IO&#xff08;Input/Output&#xff09;流是用于处理输入和输出操作的一种抽象方式。这些流可以处理多种类型的数据&#xff0c;如字节、字符、对象等。通过IO流&#xff0c;Java程序可以与其他设备&#xff08;如文件、网络套接字、内存等&#xff09;进…