Unity C# - 将内置数组添加到列表
本文关键字:添加 列表 数组 内置 Unity | 更新日期: 2023-09-27 18:09:56
int[] trisFront = { 0, 3, 2, 2, 1, 0};
int[] trisRight = { 1, 2, 6, 6, 5, 1 };
int[] trisBack = { 5, 6, 7, 7, 4, 5 };
int[] trisLeft = { 4, 7, 3, 3, 0, 4 };
int[] trisUp = { 3, 7, 6, 6, 2, 3 };
int[] trisBottom = { 4, 0, 1, 1, 5, 4 };
List<int> tris = new List<int>();
tris.Add(trisFront);
tris.Add(trisBack);
tris.Add(trisRight);
tris.Add(trisLeft);
tris.Add(trisUp);
tris.Add(trisBottom);
我想要所有的三底,上...要进入 tris 列表,我该怎么做?
使用 Add
方法时,将 1 个类型为 T
的项目添加到集合中。在您当前的用法中,这意味着tris
应该是一个List<int[]>
,因为您要添加 int[]
类型的项目。
您应该做的是使用 AddRange
方法而不是 Add
- 这会将集合中的所有项目添加到tris
列表的末尾:
tris.AddRange(trisFront);
tris.AddRange(trisBack);
tris.AddRange(trisRight);
tris.AddRange(trisLeft);
tris.AddRange(trisUp);
tris.AddRange(trisBottom);
听起来你想要List.AddRange
:
tris.AddRange(trisFront);
当tris是一个泛型列表时,你可以只使用:
tris.AddRange(trisFront);
如果它是不同的数据类型,请告诉我。
public List<int> tris = new List<int>();
int[] trisFront = { 0, 3, 2, 2, 1, 0};
int[] trisRight = { 1, 2, 6, 6, 5, 1 };
int[] trisBack = { 5, 6, 7, 7, 4, 5 };
int[] trisLeft = { 4, 7, 3, 3, 0, 4 };
int[] trisUp = { 3, 7, 6, 6, 2, 3 };
int[] trisBottom = { 4, 0, 1, 1, 5, 4 };
tris.AddRange(trisFront);
tris.AddRange(trisBack);
tris.AddRange(trisRight);
tris.AddRange(trisLeft);
tris.AddRange(trisUp);
tris.AddRange(trisBottom);
完美工作