2017-01-09 5 views
0

私はこのようないくつかのコードGetHashCodeメソッドをオーバーライドするC#で何が?

public override int GetHashCode 
{ 
    return this.FirstName.GetHashCode()^this.LastName.GetHashCode() 
} 

「^」の記号は何を?いパワーマス機能ですか?

+0

https://msdn.microsoft.com/en-us/library/zkacc7k1.aspx – Axis

+0

^それは、XORビット演算子 – Mox

+0

ですバイナリXOR演算子をC#で – kritikaTalwar

答えて

21

ビット単位ではXOR operatorです。

0^0 = 0 
1^1 = 0 
1^0 = 1 
0^1 = 1 

これは、2つのハッシュ値を結合して新しいハッシュ値を作成するのに便利な方法です。

別の例にこれを適用する:6^10 = 12

| Binary | Decimal | 
|--------|---------| 
| 0110 |  6 | 
| 1010 |  10 | 
|========|=========| 
| 1100 |  12 | 
|========|=========| 
関連する問題