首页 > 解决方案 > 使用方法和 MessageBox.show 反转数组

问题描述

我对以下代码有疑问:

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 而不是整个数组。我确定这是我的 reversButton 代码的编写方式,但我不确定如何修复它。当我单击 reverseButton 时,如何将我的代码修复到哪里,整个数组将以相反的顺序显示?

标签: c#arraysreverse

解决方案


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

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

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);

推荐阅读