CompareInfo.GetHashCode 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
傳回此 CompareInfo 執行個體或特定字串的雜湊程式碼。
多載
GetHashCode(String, CompareOptions) |
根據指定的比較選項,取得字串的雜湊碼。 |
GetHashCode() |
做為目前 CompareInfo 的雜湊函式,用於雜湊演算法和資料結構,例如雜湊資料表。 |
GetHashCode(ReadOnlySpan<Char>, CompareOptions) |
根據所指定比較選項取得字元範圍的雜湊碼。 |
GetHashCode(String, CompareOptions)
根據指定的比較選項,取得字串的雜湊碼。
public:
virtual int GetHashCode(System::String ^ source, System::Globalization::CompareOptions options);
public:
int GetHashCode(System::String ^ source, System::Globalization::CompareOptions options);
public virtual int GetHashCode (string source, System.Globalization.CompareOptions options);
public int GetHashCode (string source, System.Globalization.CompareOptions options);
override this.GetHashCode : string * System.Globalization.CompareOptions -> int
Public Overridable Function GetHashCode (source As String, options As CompareOptions) As Integer
Public Function GetHashCode (source As String, options As CompareOptions) As Integer
參數
- source
- String
要傳回其雜湊碼的字串。
- options
- CompareOptions
決定如何比較字串的值。
傳回
32 位元帶正負號的整數雜湊碼。
例外狀況
source
為 null
。
備註
的行為GetHashCode取決於其實作,這可能會從一個版本的 Common Language Runtime 變更為另一個版本,或從一個 .NET Framework 平台變更為另一個版本。
重要
如果兩個字串物件相等,此方法會 GetHashCode 傳回相同的值。 不過,每個唯一字串值都沒有唯一的哈希碼值。 不同的字串可以傳回相同的哈希碼。
哈希程式代碼本身不保證穩定。 相同字串的哈希碼在 .NET Framework 版本和平臺 (之間可能會有所不同,例如單一版本的 .NET Framework 32 位和 64 位) 。 在某些情況下,它們甚至可能會因應用程式域而有所不同。
因此,哈希碼不應該用在建立它們的應用程式域之外,不應該使用它們做為集合中的索引鍵字段,而且不應該保存它們。
另請參閱
適用於
GetHashCode()
做為目前 CompareInfo 的雜湊函式,用於雜湊演算法和資料結構,例如雜湊資料表。
public:
override int GetHashCode();
public override int GetHashCode ();
override this.GetHashCode : unit -> int
Public Overrides Function GetHashCode () As Integer
傳回
目前 CompareInfo 的雜湊碼。
備註
這個方法會覆寫 Object.GetHashCode。
這個方法會為兩個物件產生相同雜湊程式碼,這兩個物件根據 Equals 方法是相等的物件。
另請參閱
適用於
GetHashCode(ReadOnlySpan<Char>, CompareOptions)
根據所指定比較選項取得字元範圍的雜湊碼。
public:
int GetHashCode(ReadOnlySpan<char> source, System::Globalization::CompareOptions options);
public int GetHashCode (ReadOnlySpan<char> source, System.Globalization.CompareOptions options);
override this.GetHashCode : ReadOnlySpan<char> * System.Globalization.CompareOptions -> int
Public Function GetHashCode (source As ReadOnlySpan(Of Char), options As CompareOptions) As Integer
參數
- source
- ReadOnlySpan<Char>
要傳回其雜湊碼的字元範圍。
- options
- CompareOptions
決定如何比較字串的值。
傳回
32 位元帶正負號的整數雜湊碼。
備註
此多載的行為取決於其實作,而此實作可能會從一個 Common Language Runtime 版本變更為另一個版本,或從一個 .NET 實作變更為另一個版本。
重要
如果兩個字元範圍相等,此多載會傳回相同的值。 不過,每個唯一字元範圍值都沒有唯一的哈希碼值。 不同的字元範圍可以傳回相同的哈希碼。
哈希程式代碼本身不保證穩定。 相同字元範圍的哈希碼可能會因 .NET 實作的版本而異,以及跨平臺 (,例如單一 .NET 版本的32位和64位) 。
因此,哈希碼不應該用在建立它們的應用程式域之外,不應該使用它們做為集合中的索引鍵字段,而且不應該保存它們。