尽管大多数情况下,我们碰到数组相关的数据处理都会用到魂环,但是极少数情况或者面试的时候会被问到,不能用循环时的数组处理。
举个例子,有个面试题问到:不用循环,不逐一赋值的情况下,把一个数组逆序输出。一般这类的问题,用递归的方法可以轻松解决。
void Start()
{
int[] ary = new int[] { 1, 2, 3, 5, 7 };
Print(ary, ary.Length);
}
void Print(int[] a, int count)
{
if (count > 0)
{
Debug.Log(a[count - 1] + " ");
Print(a, count - 1);
}
}
结果