📅  最后修改于: 2023-12-03 15:20:53.085000             🧑  作者: Mango
在 Unity 中,常常需要对列表进行重新排序的操作。这个操作可以用 C# 语言实现。下面是一个示例程序,可以对一个列表进行重新排序。
定义一个类,用来保存列表的元素。
public class Element
{
public int Index { get; set; }
public string Name { get; set; }
}
定义一个数组,用来保存列表的元素。
Element[] elements = new Element[]
{
new Element { Index = 1, Name = "Element 1" },
new Element { Index = 2, Name = "Element 2" },
new Element { Index = 3, Name = "Element 3" },
new Element { Index = 4, Name = "Element 4" },
new Element { Index = 5, Name = "Element 5" }
};
使用 LINQ 的 OrderBy
方法,可以对一个列表进行重新排序。下面的代码将列表按照 Index
字段进行升序排序,然后输出每个元素的 Name
字段。
var sortedElements = elements.OrderBy(x => x.Index);
foreach (var element in sortedElements)
{
Debug.Log(element.Name);
}
如果要按照 Index
字段进行降序排序,可以使用 OrderByDescending
方法:
var sortedElements = elements.OrderByDescending(x => x.Index);
foreach (var element in sortedElements)
{
Debug.Log(element.Name);
}
以上就是 Unity 如何重新排序列表的介绍。使用 LINQ 的 OrderBy
或 OrderByDescending
方法可以很方便地对列表进行重新排序。