Dicas - Ganhando performance na comparação de strings

Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Para efetuar o download você precisa estar logado. Clique aqui para efetuar o login
Confirmar voto
0
 (1)  (0)

Veja nesta dica, utilizado o método CompareOrdinal como o ganho de performance é significativo quando comparamos strings.

Ganhando performance na comparação de strings

    A comparação normal de strings no ambiente .NET, utilizando o simples sinal de = (que também é equivalente ao método compare da classe string), trabalha de uma forma dita como "local-aware", ou seja, independente de localidade em que o software está rodando. Então para fazer a comparação é feita uma conversão de cada caracter UNICODE para um valor numérico que reflete o caracter no international settings configurado, só depois disso os valores resultantes são comparados. 

   Isso pode gerar alguma lentidão na comparação de strings. Então para haver uma otimização do processo pode-se utilizar o método CompareOrdinal da classe string, que é de 3 a 4 vezes mais rápido do que o método de comparação tradicional (=), veja :

if string.compareOrdinal(v1,v2)=0 then
msgbox("v1 e v2 são iguais")
else
msgbox("v1 e v2 são diferentes")
end if

 
Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Receba nossas novidades
Ficou com alguma dúvida?