C#集合类用法实例代码详解

C#集合类用法实例代码详解

本文将详细展示C#集合类的用法,包括List、Dictionary、HashSet等常用集合类。你将学习到如何创建并操作这些集合类,并且会有两个实例说明帮助你更好地理解。

List

创建和初始化List

创建List可以直接使用List的构造函数,也可以使用Collection初始化器

List<int> list1 = new List<int>() { 1, 2, 3, 4 };
List<int> list2 = new List<int>(new int[] { 5, 6, 7, 8 });

List的添加、删除、查询操作

List<int> list = new List<int>() { 1, 2, 3, 4 };
list.Add(5);
list.AddRange(new int[] { 6, 7 }); 
list.Remove(3); 
list.RemoveAt(1); 

int index = list.IndexOf(4);  
bool contains = list.Contains(2); 

实例说明

例如,我们想把List转换成字符串,这时可以使用string.Join方法

List<int> list = new List<int>() { 1, 2, 3, 4 }; 
string output = string.Join(", ", list);

Dictionary

创建和初始化Dictionary

创建Dictionary可以直接使用Dictionary的构造函数,也可以使用Collection初始化器

Dictionary<string, int> dictionary1 = new Dictionary<string, int>()
{
    {"apple", 10},
    {"banana", 5},
    {"orange", 15}
};

Dictionary<string, int> dictionary2 = new Dictionary<string, int>()
{
    ["apple"] = 10,
    ["banana"] = 5,
    ["orange"] = 15
};

Dictionary的添加、删除、查询操作

Dictionary<string, int> dictionary = new Dictionary<string, int>();
dictionary.Add("apple", 10);
dictionary.Add("banana", 5);
dictionary.Add("orange", 15);
dictionary["grape"] = 20; 

dictionary.Remove("orange"); 
dictionary.TryGetValue("apple", out int appleCount);

实例说明

例如,在Dictionary中查找值最大的键

Dictionary<string, int> dictionary = new Dictionary<string, int>()
{
    {"apple", 10},
    {"banana", 5},
    {"orange", 15}
};

var maxKey = dictionary.Aggregate((x, y) => x.Value > y.Value ? x : y).Key;
// maxKey = "orange"

HashSet

创建和初始化HashSet

创建HashSet可以直接使用HashSet的构造函数,也可以使用Collection初始化器

HashSet<int> hashSet1 = new HashSet<int>() { 1, 2, 3, 4 };
HashSet<int> hashSet2 = new HashSet<int>(new int[] { 5, 6, 7, 8 });

HashSet的添加、删除、查询操作

HashSet<int> hashSet = new HashSet<int>() { 1, 2, 3, 4 };
hashSet.Add(5); 
hashSet.Remove(3); 

bool contains = hashSet.Contains(2);  

实例说明

例如,我们想求两个HashSet的交集

HashSet<int> hashSet1 = new HashSet<int>() { 1, 2, 3, 4 };
HashSet<int> hashSet2 = new HashSet<int>() { 3, 4, 5, 6 };

hashSet1.IntersectWith(hashSet2);
// hashSet1 = { 3, 4 }

以上就是本文对C#集合类的详细讲解,希望能对你的学习有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C#集合类用法实例代码详解 - Python技术站

(0)
上一篇 2023年5月31日
下一篇 2023年5月31日

相关文章

  • C#的Excel导入、导出

    下面给您详细讲解C#中的Excel导入和导出的完整攻略。 导入Excel 使用第三方库 要导入Excel文件到C#程序中,常用的做法是使用第三方库。其中比较常用的库有: NPOI:NPOI是C#的开源库,用于按照Microsoft Office的公开标准读写Excel文件。功能强大,支持.xls、.xlsx、.ppt、.pptx、.doc和.docx等Off…

    C# 2023年5月15日
    00
  • C#获取网页源代码的方法

    针对“C#获取网页源代码的方法”,下面是完整攻略: 一、概述 在进行爬虫等网络数据采集任务时,获取网页源代码是一个重要的操作。C#是一门流行的编程语言,下面介绍两种获取网页源代码的方法: 使用HttpWebRequest对象 使用WebClient对象 二、使用HttpWebRequest对象 HttpWebRequest对象是一个用于向Web服务器发送We…

    C# 2023年5月31日
    00
  • Winform ComboBox如何独立绘制下拉选项的字体颜色

    要实现Winform ComboBox独立绘制下拉选项的字体颜色,可以采用以下步骤: 1. 继承ComboBox并重写OnDrawItem方法 我们需要自定义一个ComboBox控件,继承原有的ComboBox并重写OnDrawItem方法。在这个方法中,我们可以为每个下拉选项单独设置字体颜色。 public class CustomComboBox : C…

    C# 2023年6月6日
    00
  • c# 网址压缩简单实现短网址

    下面是C#网址压缩简单实现短网址的完整攻略: 1. 短网址原理 短网址是将长的url经过特殊算法处理,缩短成几个字符,方便用户记忆、分享、输入等。短网址生成的过程包含以下几个步骤: 生成长的url 将url转换为数字 将数字进行压缩,生成短网址 将短网址与url映射存储到数据库 2. 算法原理 常用的短网址算法有以下几种: 哈希算法 随机数算法 自增序列算法…

    C# 2023年6月7日
    00
  • c# Newtonsoft 六个值得使用的特性(下)

    c#Newtonsoft六个值得使用的特性(下) 本文将介绍c#中使用Newtonsoft.Json的六个值得使用的特性,并提供示例来帮助您更好地理解这些特性。 1. JsonConverter JsonConverter 允许我们创建一个自定义的序列化器(serializer)来处理我们的 JSON 对象。我们可以在实现JsonConverter类时覆盖带…

    C# 2023年5月14日
    00
  • C# Path.GetFullPath(string path):获取指定路径的完整路径

    Path.GetFullPath(string path)是C#中的一个静态方法,用于将相对路径转换为绝对路径。具体来说,它根据指定的相对路径和当前工作目录,返回一个完全限定的绝对路径。 使用方法: string fullPath = Path.GetFullPath("relative/path.txt"); 其中参数relative/…

    C# 2023年4月19日
    00
  • c# winform 关闭窗体时同时结束线程实现思路

    一、背景 在使用C# Winform编写程序时,有时候我们需要在关闭窗体的时候同时结束线程。但是在代码实现中,由于线程和UI控件属于不同的线程,因此需要注意一些细节问题。下面是具体的实现思路。 二、实现思路 1.启动线程 我们需要在用户打开窗体的时候启动线程。这个步骤可以放在窗体的Load事件中: private Thread workThread; pri…

    C# 2023年6月7日
    00
  • 使用VS2022在ASP.NET Core中构建轻量级服务

    下面是使用VS2022在ASP.NET Core中构建轻量级服务的完整攻略: 简介 ASP.NET Core是一个跨平台的开源框架,它提供了构建 Web 应用程序和服务的工具和框架。本攻略将带你使用VS2022在ASP.NET Core中构建轻量级服务。 步骤一:创建 ASP.NET Core 项目 打开 Visual Studio 2022,选择“创建新项…

    C# 2023年6月3日
    00
合作推广
合作推广
分享本页
返回顶部