【100个 Unity实用技能】☀️ | C#中 Add 和 AddRange 的区别 及 使用示例_Add

Unity 小科普

老规矩,先介绍一下 Unity 的科普小知识:

  • Unity是 实时3D互动内容创作和运营平台 。
  • 包括游戏开发、美术、建筑、汽车设计、影视在内的所有创作者,借助 Unity 将创意变成现实。
  • Unity 平台提供一整套完善的软件解决方案,可用于创作、运营和变现任何实时互动的2D和3D内容,支持平台包括手机、平板电脑、PC、游戏主机、增强现实和虚拟现实设备。
  • 也可以简单把 Unity 理解为一个游戏引擎,可以用来专业制作游戏!

【100个 Unity实用技能】☀️ | C#中 Add 和 AddRange 的区别 及 使用示例_AddRange_02


Unity 实用小技能学习

C#中 Add 和 AddRange 的区别

在C#中对于给集合添加元素有常用的两种方法,分别是 ​​Add​​​ 和 ​​AddRange​​。

  • Add:将指定的对象添加到集合或者容器中
  • AddRange:向集合或者容器中的末尾添加数据数组。

本篇文章就来简单介绍下这两种方法的区别。

实例代码如下

  1. 使用Add添加单个元素
List<string> addList = new List<string>();
addList.Add("xiaoY");
addList.Add("xioaxioaY");
addList.Add("小Y");
addList.Add("小小Y");
foreach (var l in addList)
{
Debug.Log("1列表测试:" + l);
}

【100个 Unity实用技能】☀️ | C#中 Add 和 AddRange 的区别 及 使用示例_AddRange_03

  1. 使用AddRange添加实现了接口IEnumerable的一个泛型集合的所有元素到指定泛型集合末尾

下面是将 字典中的Keys和Values 使用AddRange添加进List的示例。

Dictionary<string, string> dic = new Dictionary<string, string>() { { "1", "张三" }, { "2", "李四" }, { "3", "王五" } };

List<string> list1 = new List<string>();
list1.AddRange(dic.Keys);//将字典的所有key添加进列表
foreach (var l in list1)
{
Debug.Log("2列表测试:" + l);
}

List<string> list2 = new List<string>();
list2.AddRange(dic.Values);//将字典的所有Value添加进列表
foreach (var l in list2)
{
Debug.Log("2列表测试:" + l);
}

【100个 Unity实用技能】☀️ | C#中 Add 和 AddRange 的区别 及 使用示例_AddRange_04

下面是将 字符串数组 使用AddRange添加进List的示例

string[] array = { "小Y", "小小Y", "xiaoY" };
List<string> list3 = new List<string>();
list3.AddRange(array);
foreach (var l in list3)
{
Debug.Log("3列表测试:" + l);
}

【100个 Unity实用技能】☀️ | C#中 Add 和 AddRange 的区别 及 使用示例_unity_05


AddRange可以将要加入的元素一次性加入,Add一次只能添加一个,

所以在对于想要一次性添加多个元素时使用AddRange可以更省事一些。


【100个 Unity实用技能】☀️ | C#中 Add 和 AddRange 的区别 及 使用示例_c#_06