Compartilhar via


StringComparer.GetHashCode Método

Definição

Quando substituído em uma classe derivada, obtém o código hash para o objeto StringComparer atual.

Sobrecargas

GetHashCode(String)

Quando substituído em uma classe derivada, obtém o código hash para a cadeia de caracteres especificada.

GetHashCode(Object)

Quando substituído em uma classe derivada, obtém o código hash para o objeto especificado.

GetHashCode(String)

Quando substituído em uma classe derivada, obtém o código hash para a cadeia de caracteres especificada.

public:
 abstract int GetHashCode(System::String ^ obj);
public abstract int GetHashCode (string obj);
override this.GetHashCode : string -> int
Public MustOverride Function GetHashCode (obj As String) As Integer

Parâmetros

obj
String

Uma cadeia de caracteres.

Retornos

Int32

Um código hash com sinal de 32 bits calculado do valor do parâmetro obj.

Implementações

Exceções

Não há memória suficiente disponível para alocar o buffer necessário para calcular o código hash.

obj é null.

Comentários

O GetHashCode(String) método é mais eficiente do que o GetHashCode(Object) método porque o obj parâmetro não precisa ser unboxed para executar a operação.

O GetHashCode(String) método aloca uma quantidade de memória proporcional ao tamanho de obj calcular o código hash de obj. No caso de cadeias de caracteres grandes, tentar recuperar o código hash pode gerar um ArgumentException. Em vez disso, você pode usar um algoritmo alternativo que aloca uma quantidade fixa de memória ao calcular códigos de hash. Para usar esse algoritmo, adicione o elemento <NetFx45_CultureAwareComparerGetHashCode_LongStrings> à <runtime> seção do arquivo de configuração do aplicativo.

Aplica-se a

GetHashCode(Object)

Quando substituído em uma classe derivada, obtém o código hash para o objeto especificado.

public:
 virtual int GetHashCode(System::Object ^ obj);
public:
 int GetHashCode(System::Object ^ obj);
public int GetHashCode (object obj);
override this.GetHashCode : obj -> int
Public Function GetHashCode (obj As Object) As Integer

Parâmetros

obj
Object

Um objeto.

Retornos

Int32

Um código hash com sinal de 32 bits calculado do valor do parâmetro obj.

Implementações

Exceções

Não há memória suficiente disponível para alocar o buffer necessário para calcular o código hash.

obj é null.

Comentários

O GetHashCode(String) método é mais eficiente do que o GetHashCode método porque o obj parâmetro não precisa ser desacomparizado para executar a operação.

O GetHashCode(Object) método aloca uma quantidade de memória proporcional ao tamanho de obj calcular o código hash de obj. No caso de cadeias de caracteres grandes, tentar recuperar o código hash pode gerar um ArgumentException. Em vez disso, você pode usar um algoritmo alternativo que aloca uma quantidade fixa de memória ao calcular códigos de hash. Para usar esse algoritmo, adicione o elemento <NetFx45_CultureAwareComparerGetHashCode_LongStrings> à <runtime> seção do arquivo de configuração do aplicativo.

Aplica-se a