C# 使用方法和MessageBox.show反转数组

C# 使用方法和MessageBox.show反转数组,c#,arrays,reverse,C#,Arrays,Reverse,我对以下代码有问题: public int ReverseArray(int[] rArray) { int[] array = { 1, 2, 3, 4, 5, 6, 7, 8 }; Array.Reverse(array); foreach (int value in array) { return (value); } return 0; } p

我对以下代码有问题:

public int ReverseArray(int[] rArray)
    {
        int[] array = { 1, 2, 3, 4, 5, 6, 7, 8 };
        Array.Reverse(array);
        foreach (int value in array)
        {
            return (value);
        }
        return 0;
    }

    private void reverseButton_Click(object sender, EventArgs e)
    {
        int[] input = new int[10]; 
        int output = ReverseArray(input);
        MessageBox.Show(""+ output);
    }
该代码应该获取给定的数组(int[]array={1,2,3,4,5,6,7,8};),并在单击按钮时将其反转;但是,当我单击reverseButton时,我只得到数字8,而不是整个数组。我肯定这就是我的ReverseButton代码的编写方式,但我不确定如何修复它。
如何将代码固定到当我单击reverseButton时,整个数组将以相反的顺序显示的位置?

您没有返回整个数组,也没有迭代数组结果,并且数组是要打印的项的集合,您需要告诉它逐个获取每个项并打印

您可以执行以下操作使其正常工作:

public int[] ReverseArray(int[] rArray)
{
        Array.Reverse(array);
        return array;
}
在按钮点击事件中,您可以使用它:

int[] input = { 1, 2, 3, 4, 5, 6, 7, 8 };
input = ReverseArray(input); 

string items = String.Join(",",input);
MessageBox.Show(items);

因为您的方法
reversearlay
只返回一个值:

public int[] ReverseArray(int[] rArray)
{
    int[] array = { 1, 2, 3, 4, 5, 6, 7, 8 };
    Array.Reverse(array);
    return array;
}
要显示整个数组,可以将其组合成一些字符串:

int[] output = ReverseArray(input);
var message = string.Join(", ", output);
并展示:

MessageBox.Show(message);

首先,我想说清楚:我不是来侮辱你的,我是来帮助你的。您当前的代码没有意义。您已经知道有一种内置的反转阵列的方法,为什么要用自己的方法包装它呢?另外,如果要反转数组,为什么方法返回单个int?为什么对你传递给它的论点不采取任何行动?在我看来,在你真正编写代码之前,你需要先学习c的基础知识。不幸的是,我完全同意,这是一个“从c开始”的作业(我知道每个人都反对发布作业)