首页 > 解决方案 > 方法指示具有给定排序顺序的排序数组的正确性

问题描述

每个人!请帮忙!我必须做这个任务:

创建函数IsSorted,确定给定的任意长度整数值数组是否按给定顺序排序(顺序由 enum 设置valueSortOrder)。数组和排序顺序由参数传递。函数不会改变数组。
(定义公共静态方法 'IsSorted' 指示使用给定排序顺序对数组进行排序的正确性。值应按以下顺序传递给方法:数组,顺序。)
我试过这个:

public enum SortOrder { Ascending, Descending }
public static class Function
{
    public static bool IsSorted(string[] par_names {"array", "order"})
    {
        return true;
    }
}

方法没有正确的参数名称,我不知道如何处理它。

测试秋天:

public void Method_HasCorrectParameterNames(string name, string[] par_names)
{
    var method = type.GetMethod(name);
    if (method != null)
    {
        var parameters = type.GetMethod(name).GetParameters();
        if (parameters != null)
        {
            if (par_names.Length == parameters.Length)
            {
                foreach (var item in par_names)
                {
                    var exp_name = item;
                    var count = parameters.Where(x => x.Name == exp_name).Count();
                    if (count != 1)
                    {
                        Assert.Fail(message: $"There are no '{exp_name}' parameter in method {name} ");
                    }
                }
            }
            else
            {
                Assert.Fail(message: $"Amount of '{name}' method parameters is incorrect ");
            }
        }
        else
        {
            Assert.Fail($"There are not parameters in method '{name}' ");
        }
    }
    else
    {
        Assert.Fail($"Method '{name}' doesen't exist ");
    }
}

标签: arrayssortingparameters

解决方案


推荐阅读