当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


C# List和Set的区别用法及代码示例


C# 中的列表与 JAVA 中的列表相同。本质上,它是一种可以存储变量的对象类型。但与对象不同的是,它仅以特定的顺序存储变量。以下是我们可以声明变量的语法:

用法:

List<int> numbers = new List<int>();

列表和数组之间的区别在于列表的大小是动态的。另一方面,我们必须定义数组的大小。列表的初始化如下:

用法:

List<int> numbers = new List<int>();
numbers.Add(1);
numbers.Add(2);
numbers.Add(3);

C#中的集合指的是HashSet。它是独特元素的无序集合。它指的是 System.Collections.Generic 命名空间。主要用于当我们想要删除列表中插入的重复元素时。以下是 HashSet 的声明:

用法:

var set = new HashSet<string>(arr1);

要删除重复元素,请将其设置为数组。

用法:

string[] arr2 = set.ToArray();

列表和集合的区别:

编号 基础 List
1. Define 列表是一种存储元素的数据结构。 集合也是一种数据结构,但存储唯一的元素。
2. Sequence 元素的顺序很重要。 顺序并不重要,只取决于实现。
3. 元素访问 通过使用列表中元素的索引来访问列表中的元素。 在集合中,元素是可以轻松访问的索引。
4. 接口 Systems.Collection.IList 是可用于列表实现的接口。 Systems.Collection.ISet 是可用于 Set 实现的接口。
5. Implementation

它可以通过两种方式实现:

  • 静态列表(使用数组)
  • 动态列表(使用LinkedList)

也可以通过两种方式实现:

  • HashSet(哈希表)
  • 排序集(基于红黑树)
6. 表里不一 该列表可以有重复的元素。 集合仅包含唯一元素。
7. 表现 List的性能不如Set。 集合比列表具有更好的性能。
8. 方法

清单上有多种方法可供申请。其中一些如下:

  • int 添加(元素)
  • 无效插入(int,元素)
  • 无效Clear()
  • int IndexOf(元素)

有许多方法可应用于 Set。其中一些如下:

  • 布尔添加(元素)
  • 布尔包含(元素)
  • 布尔删除(元素)
  • 无效Clear()

相关用法


注:本文由纯净天空筛选整理自itskawal2000大神的英文原创作品 Difference Between List and Set in C#。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。