如何将一个方法拆分为两个较小的方法,一个用于输入,一个用于显示?

时间:2017-10-15 00:59:36

标签: c#

我正在尝试将一个方法拆分为两个较小的方法 - 一个用于读取用户输入数组,另一个用于显示此方法。如果我在一个方法中拥有所有内容但似乎无法使其按照下面的方式工作,则它可以工作。提前谢谢。

{
        numbersArray();
        DisplayNumbers();

    }

    static void numbersArray()
    {
        //declare the array
        int[] numbers = new int[10];
        //get user input
        for (int i = 0; i < numbers.Length; i++)
        {
            Console.WriteLine("Please enter a number: ");
            numbers[i] = int.Parse(Console.ReadLine());
        }
    }

    static void DisplayNumbers();
    {
    foreach(var n in numbers)
        {
            Console.Writeline(n);
        }

    }

2 个答案:

答案 0 :(得分:1)

static String[] numbersArray()
{
    private static String[] nums = new String[10];
    //get user input
    for (int i = 0; i < nums.Length; i++)
    {
        Console.WriteLine("Please enter a number: ");
        nums[i] = Console.ReadLine();
    }

    return nums;
}

static void DisplayNumbers(String[] nums)
{
    foreach (var n in nums)
    {
        Console.WriteLine(n);
    }
}

static void Main(string[] args)
{   
    DisplayNumbers(numbersArray());
}

答案 1 :(得分:-1)

您应该在函数之外声明数字数组,因为它们都被使用:

    //declare the array
    private static int[] numbers = new int[10];

    static void numbersArray()
    {
        //get user input
        for (int i = 0; i < numbers.Length; i++)
        {
            Console.WriteLine("Please enter a number: ");
            numbers[i] = int.Parse(Console.ReadLine());
        }
    }

    static void DisplayNumbers()
    {
        foreach (var n in numbers)
        {
            Console.WriteLine(n);
        }
    }

    static void Main(string[] args)
    {
        numbersArray();
        DisplayNumbers();
    }