C# 无法隐式转换类型';int';至';int[]和#x27;关于二维数组

C# 无法隐式转换类型';int';至';int[]和#x27;关于二维数组,c#,.net,int,return,C#,.net,Int,Return,在下面的代码中,我得到 无法将类型“int”隐式转换为“int[]” 导致错误的行是 return firstNum - secondNum; 这是我的密码 namespace Determinant { class Program { static int[] BerekenDeterminant (int[,] determinant) { int firstNum = determinant[0,0] * deter

在下面的代码中,我得到

无法将类型“int”隐式转换为“int[]”

导致错误的行是

return firstNum - secondNum;
这是我的密码

namespace Determinant
{
    class Program
    {
        static int[] BerekenDeterminant (int[,] determinant)
        {
            int firstNum = determinant[0,0] * determinant[1, 1];
            int secondNum = determinant[0,1] * determinant[1, 0];
            return firstNum - secondNum;
        }
        static void Main(string[] args)
        {
            int[,] aMatrix =
            {
                {2,4},
                {3,5}
            };
            Console.WriteLine($"Determinant van matrix is {BerekenDeterminant(aMatrix)}");
            Console.ReadLine();
        }
    }
}

或者只需将返回类型更改为int-only。根据您希望如何使用该方法,您需要创建一个新阵列:

static int[] BerekenDeterminant(int[,] determinant)
    {        
        int firstNum = determinant[0, 0] * determinant[1, 1];
        int secondNum = determinant[0, 1] * determinant[1, 0];
        int[] inttab = new int[] {firstNum, secondNum};
        // or
        // int[] inttab = new int[] { firstNum - secondNum };
        return inttab;
    }

这回答了你的问题吗?只需将返回类型改为int而不是int[]。int[]是数组类型什么是预期行为(cba对google来说什么是决定因素)?如果要返回
int
,只需将方法签名中的返回类型从
int[]
更改为
int
static int[] BerekenDeterminant(int[,] determinant)
    {        
        int firstNum = determinant[0, 0] * determinant[1, 1];
        int secondNum = determinant[0, 1] * determinant[1, 0];
        int[] inttab = new int[] {firstNum, secondNum};
        // or
        // int[] inttab = new int[] { firstNum - secondNum };
        return inttab;
    }