我想比較兩個數組,如果所有的值都相同,我會做一些東西。我寫這樣的函數來檢查是否有任何不同的值。如果是這樣返回false。兩個數組有相同的值,但不返回相等
bool Deneme()
{
for (int i = 0; i < correctOnes.Length; i++) {
if(correctOnes[i] != cubeRotation[i].rotation.eulerAngles)
{
return false;
}
}
return true;
}
當我調用Deneme函數時,它總是返回false。但是,我檢查控制檯中的數組值,它們都是相同的。任何想法是怎麼回事?
檢查一樣,
for (int i = 0; i < correctOnes.Length; i++) {
Debug.Log ("Corrects: " + correctOnes[i]);
Debug.Log ("Cubes: " + cubeRotation[i].rotation.eulerAngles);
}
一試。如果他們是平等的,你爲什麼不使用Array.Equals()? –
@cFrozenDeath:出於兩個原因;因爲它是一個與數組對象中的屬性進行比較的值數組,因爲Array.Equals比較了引用而不是數組值。 – Guffa
您比較的值的類型是什麼? – Guffa