我有两个不同长度的二维数组,都是double类型。我试图比较第一个数组的内容与第二个数组的内容。然而,当第一元素中的一个值在第二元素中等于1时,得分增加,而当i和j的值都等于x和y的值时,得分增加。有人可以帮帮我吗?我正在使用的代码可以在下面找到:
if (result1.Length <= result2.Length)
{
for (int i = 0; i < 2; i++)
{
for (int j = 0; j < result1.Length / 2; j++)
{
for (int x = 0; x < 2; x++)
{
for (int y = 0; y < result2.Length / 2; y++)
{
if (result1.GetValue(i, j).Equals(result2.GetValue(x, y)))
{
score++;
}
}
}
}
}
答案 0 :(得分:1)
根据您的评论更新,我认为您需要同时检查第一列相等和第二列相等,并且只有在两者匹配时才增加分数。
if (result1.Length <= result2.Length)
{
for(int i = 0; i < result1.Length; i++)
{
for(int j = 0; j < result2.Length; j++)
{
if (result1[i,0] == result2[j,0] && result1[i,1] == result2[j,1])
{
score++;
}
}
}
}
答案 1 :(得分:0)
尝试一下:
if(result1[i,j] == result2[i,j])
score++;