C#视频—浅谈数组与集合的差别

简介: C#视频—浅谈数组与集合的差别

相信大家一看到数组、动态数组和集合放在一起讨论的时候最深刻的印象就是他们非常的相似而且都是用来存储数据的。说是非常的相似但还是有一些差别的,就是这些差别让它们各显神通。在不同的情况下选择其中的一个进行使用。接下来就让我们聊一聊它们之间的细微差别。

所谓的数组,是有序的元素序列。而数组在程序设计中,为了处理方便,把具有相同类型的有限个元素按无序的形式组织起来,这些无序排列的同类数组元素称之为数组,数组需要设定一个长度来使用。而动态数组和集合不需要设定长度就可以使用。动态数组是在任何时候都可以改变大小,需要添加什么元素,直接通过方法添加就Ok了。但是添加的元素要和声明数组的元素是一致的,不能声明的是int类型添加的确是char类型,这样会报异常的。而集合就不一样了。集合不仅不需要设定一个长度,而且还不需要声明一种类型。想向集合中添加什么类型就添加什么类型的,没有任何的限制。在存储方面,数组存数据是存在栈上面的,而集合存数据是存在堆上面的。数组的运行速度比较快,当你所要添加的元素是有限个而且是用一种类型的时候,这样情况下选择数组就比较合适,如果不明确数组应该多大才合适的话,这种情况下选择动态数组就比较合适。如果你即不知道数组应该多大才合适,添加的元素还不是同一个类型的,这种情况下选择集合就比较合适。每一个都有自己的闪光点,根据不同的情况进行选择并去使用。


相关文章
|
1月前
|
Java 物联网 C#
C#/.NET/.NET Core学习路线集合,学习不迷路!
C#/.NET/.NET Core学习路线集合,学习不迷路!
|
3月前
|
存储 C# 索引
C# 一分钟浅谈:数组与集合类的基本操作
【9月更文挑战第1天】本文详细介绍了C#中数组和集合类的基本操作,包括创建、访问、遍历及常见问题的解决方法。数组适用于固定长度的数据存储,而集合类如`List<T>`则提供了动态扩展的能力。文章通过示例代码展示了如何处理索引越界、数组长度不可变及集合容量不足等问题,并提供了解决方案。掌握这些基础知识可使程序更加高效和清晰。
88 2
|
4月前
|
数据采集 存储 C#
C# 爬虫技术:京东视频内容抓取的实战案例分析
C# 爬虫技术:京东视频内容抓取的实战案例分析
|
2月前
|
开发框架 NoSQL MongoDB
C#/.NET/.NET Core开发实战教程集合
C#/.NET/.NET Core开发实战教程集合
|
3月前
|
SQL 开发框架 安全
并发集合与任务并行库:C#中的高效编程实践
在现代软件开发中,多核处理器普及使多线程编程成为提升性能的关键。然而,传统同步模型在高并发下易引发死锁等问题。为此,.NET Framework引入了任务并行库(TPL)和并发集合,简化并发编程并增强代码可维护性。并发集合允许多线程安全访问,如`ConcurrentQueue&lt;T&gt;`和`ConcurrentDictionary&lt;TKey, TValue&gt;`,有效避免数据不一致。TPL则通过`Task`类实现异步操作,提高开发效率。正确使用这些工具可显著提升程序性能,但也需注意任务取消和异常处理等常见问题。
60 1
|
4月前
|
存储 C# 索引
C# 集合语法全解
C# 集合语法全解
39 0
|
6月前
|
存储 开发框架 .NET
C#中的数组探索
C#中的数组探索
|
7月前
|
数据采集 API C#
网页解析高手:C#和HtmlAgilityPack教你下载视频
使用C#和HtmlAgilityPack解析小红书网页,下载其视频内容。文章涵盖了解析网页、获取视频链接、C#实现、HtmlAgilityPack简化解析、代理IP确保下载稳定及多线程提高下载效率。提供的代码示例展示了如何设置代理和多线程下载视频。实验结果显示,该方法能有效、高效地下载小红书视频。
144 5
网页解析高手:C#和HtmlAgilityPack教你下载视频
|
7月前
|
存储 C#
c#视频总结(二)
c#视频总结(二)
50 1
|
7月前
|
C#
C#视频总结(三)
C#视频总结(三)
32 0