C#中数组、ArrayList、List、Dictionary的用法与区别浅析(存取数据)

下面是关于C#中数组、ArrayList、List、Dictionary的用法与区别浅析(存取数据)的完整攻略。

数组

定义

数组是一种数据结构,可以在单个变量下存储多个值。在C#中,数组是由相同类型的元素组成的集合。可以使用数组来存储一个固定数量的元素,这些元素在创建数组时就已被确定。

用法

创建数组

在C#中创建数组,需要指定数组的长度,然后使用关键字new来创建数组。下面是创建整数类型数组的示例:

int[] numbers = new int[5];

上述示例创建了一个长度为5的整数类型数组。

访问数组元素

访问数组时,需要提供索引号,索引号是从0开始的整数。下面是访问数组元素的示例:

numbers[0] = 10;

上述示例访问了数组numbers的第一个元素,并将其设置为10。

数组初始化

数组可以在创建时进行初始化,也可以通过一组值来初始化数组。下面是使用一组值来初始化数组的示例:

int[] numbers = new int[] {1, 2, 3};

上述示例创建了一个包含三个元素的整数类型数组,并将其初始化为1、2、3。

ArrayList

定义

ArrayList是一个动态数组,可以根据需要自动增加或减少其大小。在C#中,ArrayList是一种弱类型集合,这意味着它可以容纳多个类型的对象。

用法

创建ArrayList

在C#中创建ArrayList,只需要使用new关键字即可,下面是创建ArrayList的示例:

ArrayList arrayList = new ArrayList();

上述示例创建了一个空的ArrayList。

添加元素到ArrayList

使用Add()方法向ArrayList添加元素。下面是添加元素到ArrayList的示例:

arrayList.Add("apple");

上述示例向ArrayList添加了一个字符串元素"apple"。

访问ArrayList

使用索引号访问ArrayList中的元素。下面是访问ArrayList中的元素的示例:

string str = (string)arrayList[0];

上述示例访问了ArrayList中的第一个元素,并将其转换为字符串类型。

ArrayList的一些方法

下面是一些常见的ArrayList方法:

  • Clear():清空ArrayList
  • Contains(object):判断ArrayList是否包含指定的元素
  • Count:获取ArrayList中元素的个数
  • IndexOf(object):获取ArrayList中指定元素第一次出现的索引号
  • Insert(int, object):在ArrayList的指定位置插入元素
  • Remove(object):从ArrayList中移除指定元素
  • RemoveAt(int):从ArrayList中移除指定索引号的元素

List

定义

List是一个强类型集合,可以自动增加或减少其大小。

用法

创建List

在C#中创建List,和ArrayList一样使用new关键字即可,下面是创建List的示例:

List<string> list = new List<string>();

上述示例创建了一个空的字符串类型List。

添加元素到List

使用Add()方法向List添加元素。下面是添加元素到List的示例:

list.Add("apple");

上述示例向List添加了一个字符串元素"apple"。

访问List

使用索引号访问List中的元素。下面是访问List中的元素的示例:

string str = list[0];

上述示例访问了List中的第一个元素,并将其转换为字符串类型。

List的一些方法

下面是一些常见的List方法:

  • Clear():清空List
  • Contains(T):判断List是否包含指定的元素
  • Count:获取List中元素的个数
  • IndexOf(T):获取List中指定元素第一次出现的索引号
  • Insert(int, T):在List的指定位置插入元素
  • Remove(T):从List中移除指定元素
  • RemoveAt(int):从List中移除指定索引号的元素

Dictionary

定义

Dictionary是一种键值对集合。在C#中,Dictionary是一种强类型集合,可以在其中存储各种类型的键和值。

用法

创建Dictionary

在C#中创建Dictionary,和ArrayList、List一样同样使用new关键字即可,下面是创建Dictionary的示例:

Dictionary<string, int> dict = new Dictionary<string, int>();

上述示例创建了一个空的字符串类型和整数类型键值对的Dictionary。

添加元素到Dictionary

使用Add()方法向Dictionary添加元素。下面是添加元素到Dictionary的示例:

dict.Add("apple", 5);

上述示例向Dictionary添加了一个键为"apple"、值为5的元素。

访问Dictionary

使用键访问Dictionary中的值。下面是访问Dictionary中的元素的示例:

int value = dict["apple"];

上述示例访问了Dictionary中键为"apple"的元素,并将其值保存在整数类型的变量中。

Dictionary的一些方法

下面是一些常见的Dictionary方法:

  • Clear():清空Dictionary
  • ContainsKey(TKey):判断Dictionary是否包含指定的键
  • ContainsValue(TValue):判断Dictionary是否包含指定的值
  • Count:获取Dictionary中键值对的数量
  • Remove(TKey):从Dictionary中移除指定键的元素
  • TryGetValue(TKey, out TValue):获取与指定键相关联的值,并返回一个布尔值,用于指示是否找到指定键的值。

总结

  • 数组使用固定长度,不能动态增加或减少。
  • ArrayList、List和Dictionary都是动态集合,可以根据需要动态增加或减少其大小。ArrayList是弱类型集合,可以容纳多个类型的对象。List和Dictionary是强类型集合,只能容纳指定类型的对象。
  • 使用索引号访问数组、ArrayList和List中的元素。使用键访问Dictionary中的值。
  • ArrayList和List的区别在于,List是强类型集合,可以提供更好的类型检查和编译时错误检查。

下面是一个使用List的示例。这个示例创建了一个包含整数的List,并使用循环遍历List中的每个元素,并将它们相加求和:

List<int> numbers = new List<int>() {1, 2, 3, 4, 5};
int sum = 0;
foreach (int number in numbers)
{
    sum += number;
}
Console.WriteLine($"The sum is {sum}");

输出结果:“The sum is 15”。

希望以上说明能够对您有所帮助。如有疑问,请随时提出。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C#中数组、ArrayList、List、Dictionary的用法与区别浅析(存取数据) - Python技术站

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

相关文章

  • python简单线程和协程学习心得(分享)

    Python简单线程和协程学习心得 线程和协程的区别 线程是操作系统的调度单位,是由操作系统来进行线程调度,每个线程拥有自己的内存空间,一个线程会包含多个任务的处理过程,可以实现同时执行多个任务的效果。 而协程则是在用户程序中自行切换的,每个协程之间并不存在系统线程之间的上下文切换开销,协程是一种轻量级的线程,可以在同一个线程中运行,不会让操作系统进行线程上…

    C# 2023年6月6日
    00
  • C#实现收发邮件功能

    C#是一种功能强大的编程语言,支持多种操作系统,可以用于编写桌面应用程序、Web应用程序等。C#提供了丰富的库,使得邮件的收发变得很容易。 在C#中,可以使用SMTP协议发送邮件。以下是详细的步骤: 步骤1:引用命名空间 在实现邮件收发功能之前,需要在程序中引用System.Net.Mail命名空间。在程序中加入以下代码。 using System.Net.…

    C# 2023年6月6日
    00
  • .NET中 关于脏读 不可重复读与幻读的代码示例

    首先,需要理解脏读、不可重复读和幻读三种问题的定义: 脏读:一个事务读取了另一个事务未提交的数据。 不可重复读:一个事务多次读取同一行,但是在此过程中,另一个事务修改了这一行的数据。 幻读:一个事务执行两次相同的查询,但是在此过程中,另一个事务插入了一些新的数据,从而第二次查询返回了不同的结果。 为了演示这三个问题,在一个数据库中创建一个test表,包含id…

    C# 2023年5月31日
    00
  • asp.net 验证码生成和刷新及验证

    asp.net验证码生成 在asp.net中生成验证码需要使用Captcha控件,该控件可以生成图片验证码并且可以自定义验证码字符集合,大小,颜色等等。 首先需要在aspx页面中引入该控件: <%@ Register Assembly="System.Web.UI.WebControls" Namespace="Syste…

    C# 2023年6月1日
    00
  • c#字符串使用正则表达式示例

    下面是c#字符串使用正则表达式的完整攻略: 1. 使用正则表达式匹配字符串 使用c#中的正则表达式需要使用System.Text.RegularExpressions命名空间。下面是一个示例代码,其使用正则表达式匹配字符串,并将匹配到的结果输出到控制台: using System; using System.Text.RegularExpressions; …

    C# 2023年6月8日
    00
  • C#中Activator.CreateInstance()方法用法分析

    C#中Activator.CreateInstance()方法用法分析 前言 C#中 Activator.CreateInstance() 方法是一种动态创建实例的方法。在实际项目中,我们常常需要动态加载程序集并创建其中的类型对象。这时,Activator.CreateInstance()方法就可以起到很好的作用。 方法说明 Activator.Create…

    C# 2023年5月31日
    00
  • C#实现将Doc文档转换成rtf格式的方法示例

    前言 本文将详细介绍如何使用C#将.doc文档转换成.rtf格式的方法示例。本文假设您已经了解C#编程语言,并且已经准备好在您的开发环境中进行编程和调试。 主要步骤 以下是将.doc文档转换成rtf格式的主要步骤: 加载.doc文档; 获取文档的数据流; 将数据流转换为.rtf格式; 将.rtf格式保存到文件或者输出流中。 详细说明 步骤1:加载.doc文档…

    C# 2023年6月1日
    00
  • 深入了解c# 匿名类型

    深入了解 C# 匿名类型攻略 什么是匿名类型 C# 中的匿名类型是一种可以在运行时创建对象的特殊类型。与其他类不同,匿名类型没有名字,它的定义在编写代码时不需要指定名称。通常,匿名类型用于临时存储数据和查询结果等场景。 在 C# 中,创建匿名类型主要依靠对象初始化器和隐式类型表达式语法。以下是一个简单的示例: var person = new { Name …

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