我正在尝试编写一个简单的聊天框,我在Unity论坛上找到了一段非常简单的代码,但它是用UnityScript编写的(类似于JavaScript)。
我尝试将代码转换为C#,并且有些成功,但问题是代码使用了Array.Unshift()
,它将一个项目添加到数组的开头。我正在尝试找到一些简单的方法在C#中实现这个功能,但是我却无法让它工作。
Array.Unshift
的C#等效方法是什么?
我正在尝试编写一个简单的聊天框,我在Unity论坛上找到了一段非常简单的代码,但它是用UnityScript编写的(类似于JavaScript)。
我尝试将代码转换为C#,并且有些成功,但问题是代码使用了Array.Unshift()
,它将一个项目添加到数组的开头。我正在尝试找到一些简单的方法在C#中实现这个功能,但是我却无法让它工作。
Array.Unshift
的C#等效方法是什么?
根据我的理解,unshift方法将项目添加到数组的开头,并返回新数组的长度。
在C#中,您可以使用List<T>
集合。要将项目添加到列表的第一个位置,请使用以下方式。
List<T>.Insert(0, item); // this will insert item at first position
您也可以使用列表的.ToArray()
方法将此列表转换为数组。
List<T>
,或者重新考虑算法,使其不需要这样做。System.Linq
,它还会将.Prepend(T obj)
添加到IEnumerable<T>
中,其中包括数组。using System.Linq;
//...
int[] example = new int[]{1,2,3};
int[] updated = example.Prepend(0);//{0,1,2,3}
//..