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

C#入门(10):集合用法介绍

在C#中,集合是一种特殊的数据类型,允许我们将多个元素组织在一起。这些元素可以是相同的类型或者可以是不同的类型。C#集合主要包括以下几种类型:

  1. List:它是一个有序的元素列表,用户可以添加、删除或查找元素。
  2. Dictionary:它是一个键值对的集合,用户可以使用键来获取对应的值。
  3. HashSet:它是一组不重复的元素,提供高效的集合操作,如并集、交集等。
  4. Queue:它是一种先进先出(FIFO)的集合,元素从集合的一端添加,并从另一端移除。
  5. Stack:它是一种后进先出(LIFO)的集合,元素从集合的顶部添加和移除。

以下是各种集合的使用示例:

List

List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };
numbers.Add(6);  // 添加元素
int firstNumber = numbers[0];  // 获取元素
numbers.Remove(1);  // 删除元素

Dictionary

Dictionary<string, int> ages = new Dictionary<string, int>
{
    {"Alice", 23},
    {"Bob", 27}
};
ages.Add("Charlie", 30);  // 添加元素
int ageOfAlice = ages["Alice"];  // 获取元素
ages.Remove("Alice");  // 删除元素

HashSet

HashSet<int> uniqueNumbers = new HashSet<int> { 1, 2, 3, 4, 5 };
uniqueNumbers.Add(6);  // 添加元素
bool containsFour = uniqueNumbers.Contains(4);  // 检查元素是否存在
uniqueNumbers.Remove(1);  // 删除元素

Queue

Queue<string> queue = new Queue<string>();
queue.Enqueue("Alice");  // 添加元素
queue.Enqueue("Bob");
string firstInLine = queue.Dequeue();  // 移除并获取元素

Stack

Stack<string> stack = new Stack<string>();
stack.Push("Alice");  // 添加元素
stack.Push("Bob");
string topOfStack = stack.Pop();  // 移除并获取元素

以上示例应给出一个关于如何使用C#集合的基本概念。

集合的遍历
C#中所有的集合类都可以使用foreach循环进行遍历。以下是各种集合遍历的示例:

List

List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };
foreach (int number in numbers)
{
    Console.WriteLine(number);
}

Dictionary

Dictionary<string, int> ages = new Dictionary<string, int>
{
    {"Alice", 23},
    {"Bob", 27}
};
foreach (KeyValuePair<string, int> entry in ages)
{
    Console.WriteLine($"Name: {entry.Key}, Age: {entry.Value}");
}

HashSet

HashSet<int> uniqueNumbers = new HashSet<int> { 1, 2, 3, 4, 5 };
foreach (int number in uniqueNumbers)
{
    Console.WriteLine(number);
}

Queue

Queue<string> queue = new Queue<string>();
queue.Enqueue("Alice");
queue.Enqueue("Bob");
foreach (string name in queue)
{
    Console.WriteLine(name);
}

Stack

Stack<string> stack = new Stack<string>();
stack.Push("Alice");
stack.Push("Bob");
foreach (string name in stack)
{
    Console.WriteLine(name);
}

以上每个示例都将遍历集合中的每个元素,并使用Console.WriteLine将其打印到控制台。请注意,遍历Dictionary时,我们遍历的是KeyValuePair实例,可以通过KeyValue属性访问键和值。


http://www.kler.cn/a/136881.html

相关文章:

  • Windows配置cuda,并安装配置Pytorch-GPU版本
  • 【Flutter_Web】Flutter编译Web第三篇(网络请求篇):dio如何改造方法,变成web之后数据如何处理
  • 嵌入式Linux QT+OpenCV基于人脸识别的考勤系统 项目
  • 面试突击-JAVA集合类(持续更新...)
  • 低代码开源项目Joget的研究——Joget8社区版安装部署
  • spring cloud gateway 3
  • 如何利用 AI 写一本书并实现被动收入
  • 盘点35个Python书籍Python爱好者不容错过
  • 在Java代码中指定用JAXB的XmlElement注解的元素的顺序
  • 计时器 Timer(Kotlin Flow)
  • Active Directory 和域名系统(DNS)的相互关系
  • 串口工作流程硬核解析,没有比这更简单的了!
  • html常用的标签
  • 【前端知识】Node——http模块url模块的常用操作
  • IP地理位置定位技术:保护网络安全的新利器
  • meterpreter命令
  • js 深度学习(七)
  • Java高级编程-----网络编程
  • 效率提升利器:Automa插件的实用指南
  • 大数据基础设施搭建 - Kafka(with ZooKeeper)
  • clickhouse 业务日志告警
  • excel-gen.js 导出excel 功能
  • 源码安装Apache
  • 【Linux专题】退出bash后再运行jobs命令为什么不会显示后台任务
  • springMVC学习笔记-请求映射,参数绑定,响应,restful,响应状态码,springMVC拦截器
  • CentOS 7 安装CMake指定版本3.21.2