C# 如何在C中重用字段值?

C# 如何在C中重用字段值?,c#,algorithm,oop,methods,software-design,C#,Algorithm,Oop,Methods,Software Design,我有一种方法可以对不同的道路数据进行计算。我希望重用该方法,但能够更改特定的道路数据 在下面的示例中,我使用data.Road_1_256数据。我想调用该方法,但可以选择使用什么数据。例如,将Road_1_256更改为Road_1_2048,并保持方法的其余部分不变 我该怎么做 private static void Task_2(DataHandler data, BubbleSort BubbS, QuickSort QS, HeapSort HS, InsertionSort IS, )

我有一种方法可以对不同的道路数据进行计算。我希望重用该方法,但能够更改特定的道路数据

在下面的示例中,我使用data.Road_1_256数据。我想调用该方法,但可以选择使用什么数据。例如,将Road_1_256更改为Road_1_2048,并保持方法的其余部分不变

我该怎么做

private static void Task_2(DataHandler data, BubbleSort BubbS, QuickSort QS, HeapSort HS, InsertionSort IS, )
{
    // Call ascending and descending methods using quick sort (data set 256)
    Console.WriteLine("- USING QUICK SORT -");
    Console.WriteLine("- Ascending and Descending Order 10th elements (ROAD_1_256) -");
    var road_1_256_aq = QS.QuickSortAscending(data.Road_1_256, "yes"); GetNthElementsOfArray(road_1_256_aq, 10);
    var road_1_256_dq = QS.QuickSortDescending(data.Road_1_256); GetNthElementsOfArray(road_1_256_dq, 10);

    Console.WriteLine("\n\n- Ascending and Descending Order 10th elements (ROAD_2_256) -");
    var road_2_256_aq = QS.QuickSortAscending(data.Road_2_256, "yes"); GetNthElementsOfArray(road_2_256_aq, 10);
    var road_2_256_dq = QS.QuickSortDescending(data.Road_2_256); GetNthElementsOfArray(road_2_256_dq, 10);

    Console.WriteLine("\n\n- Ascending and Descending Order 10th elements (ROAD_3_256) -");
    var road_3_256_aq = QS.QuickSortAscending(data.Road_3_256, "yes"); GetNthElementsOfArray(road_3_256_aq, 10);
    var road_3_256_dq = QS.QuickSortDescending(data.Road_3_256); GetNthElementsOfArray(road_3_256_dq, 10);

您可以将传递到方法中的内容更改为实际字段本身:

    private static void Task_2(int[] road1, int[] road2, int[] road3, BubbleSort BubbS, QuickSort QS, HeapSort HS, InsertionSort IS, )
    {
         var road_1_aq = QS.QuickSortAscending(road1, "yes"); GetNthElementsOfArray(road_1_aq, 10);
         var road_1_256_dq = QS.QuickSortDescending(road1); GetNthElementsOfArray(road_1_dq, 10);

    // ...

也许会有更多的代码,但在我看来这是颠倒的。为什么要传递这么多参数?它们为什么会分类?魔术弦是怎么回事?呃,事实上,也许这应该是一个更完整的例子和代码审查。这与一个现在删除的问题有关,其中有更多的代码。你真的使用了一个名为GetnElementsOfArray的方法而不是按索引查找吗?啊,是的,谢谢