在C#中,通过反转传入数组来修改传入数组的过程?
我一直在努力寻找解决这个问题的办法 编写一个过程,通过反转来修改传入的int数组。因为这是一个过程,所以它不会返回任何内容。相反,我必须直接修改数组,因为数组是引用类型变量,所以即使在执行此过程之后,数组也将永久更改。若要反转数组,请想象数组中间有一条虚线,然后用左边的数字交换左边的数字。< /P> 目前,这是我为这个问题编写的唯一代码。根据到目前为止我所写的代码,我认为我没有找到正确的解决方案在C#中,通过反转传入数组来修改传入数组的过程?,c#,C#,我一直在努力寻找解决这个问题的办法 编写一个过程,通过反转来修改传入的int数组。因为这是一个过程,所以它不会返回任何内容。相反,我必须直接修改数组,因为数组是引用类型变量,所以即使在执行此过程之后,数组也将永久更改。若要反转数组,请想象数组中间有一条虚线,然后用左边的数字交换左边的数字。< /P> 目前,这是我为这个问题编写的唯一代码。根据到目前为止我所写的代码,我认为我没有找到正确的解决方案 public void Test10(int[] numbers) {
public void Test10(int[] numbers)
{
for (int i = 0; i < numbers.Length; i++)
{
}
public void Test10(int[]数字)
{
for(int i=0;i
您可以使用内置的Array.Reverse
方法,该方法反转整个一维数组中元素的顺序
Array.Reverse(array); // reverse supplied array
请注意,
System.Array.Reverse()
执行就地转换。您可以使用内置的Array.Reverse
方法,该方法反转整个一维数组中元素的顺序
Array.Reverse(array); // reverse supplied array
请注意,
System.Array.Reverse()
执行就地转换。根据您的偏好和需要,有两个选项
int[] array = {1,3};
Array.Reverse(array);
这将反转原始阵列
int[] array = {1,3};
var reversedArray = array.Reverse().ToArray();
这将使用linq,新的反向数组将被返回,原始数组将保持原样。根据您的偏好和需要,有两个选项
int[] array = {1,3};
Array.Reverse(array);
这将反转原始阵列
int[] array = {1,3};
var reversedArray = array.Reverse().ToArray();
这将使用linq,新的反向数组将被返回,原始数组将保持原样考虑如果给定列表
[1,2,3,4]
,您交换两个远端,给出[4,2,3,1]
,然后交换两个内部项,给出[4,3,2,1],会发生什么情况
。编写代码即可。您可以使用linq对其进行排序,更好地学习linq,在将来linq对int进行排序将非常方便array@SamiKuhmonen我很想看看你的消息来源…@SamiKuhmonen不,这叫不要使用你面前已有的工具。如果Linq已经可用于该项目(我想不出几年来我接触过的一个项目不是这样的)如果Lilnq不是一个性能成功的项目(很多人已经证明不是这样的)如果LINQ为其他支持下游代码的开发人员提供了一致的、可维护的、可读的经验,那么除了让我称之为纯实用主义的论点之外,绝对没有理由避免它。如果考虑到列表<代码> [1,2,3,4],会发生什么情况?,交换两个远端,给出[4,2,3,1]
,然后交换两个内部项,给出[4,3,2,1]
。编写代码即可。您可以使用linq对其进行排序,更好地学习linq,在将来linq对int进行排序将非常方便array@SamiKuhmonen我很想看看你的消息来源…@SamiKuhmonen不,这叫不要使用你面前已有的工具。如果Linq已经可用于该项目(我想不出几年来我接触过的一个项目不是这样的)如果Lilnq不是一个性能成功的项目(很多人已经证明不是这样的)如果Linq为其他将支持您的下游代码的开发人员提供了一致、可维护、可读的体验,那么除了我可以称之为纯实用主义的论点之外,没有任何理由避免它。这是一个好论点!!还因为这可能不足以完成明显的家庭作业任务。。。那么Array.Reverse()将在for循环之间运行?您不需要任何循环,只需传递一个输入数组,数组就会被排序。这是一个很好的数组!!还因为这可能不足以完成任务…所以Array.Reverse()将在for循环之间进行吗?您不需要任何循环,只需传递一个输入数组,数组就会被排序。