[英]Check if two values pointing to the same reference in an array
請在下面的代碼中,我如何檢查num和num2是否指向myArray中的相同引用,如果是,則跳至j的下一個實例。
我嘗試過if (myArray[i] == myArray[j])
,但是如果數組中的另一個項目具有相同的值,它將返回true。 謝謝!
for (int i = 0; i < myArray.Length; i++)
{
int num = myArray[i];
for (int j = 0; j < myArray.Length; j++)
{
int num2;
if (myArray[i] == myArray[j])
{
}
else
{
num2 = myArray[j];
}
}
}
正如史蒂夫所說; 您需要解釋您認為參考的內容。 如果您只想在語句為真的情況下繼續; 您可以簡單地使用continue;
功能。
為了檢查引用是否相等,您需要使用Object.ReferenceEquals方法。 簡單的等號運算符(==)也可以工作,但是僅在引用類型之間,如果不覆蓋相等性,則可以使用。
在您的情況下,您只能檢查兩個數組之間的引用,而不能檢查內部值。 您的數組包含作為值類型的整數值。
如果i == j,則它們是相同的“參考”。
更清楚地說:
如果i == j,則myArray [i]和myArray [j]引用相同的元素。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.