Comparar Strings
Imagine que você tem duas caixas de brinquedos e quer saber se elas são iguais ou se uma contém um tipo específico de brinquedo. No mundo da programação, comparar strings é muito parecido: você quer verificar se dois textos são idênticos, ou se um texto contém uma parte específica de outro texto. Em C#, temos métodos dedicados para isso.
CompareTo(): Comparação "Dicionário"
O método CompareTo() é como organizar palavras em um dicionário. Ele compara a string atual com outra string que você fornece, caractere por caractere, para determinar a ordem lexicográfica (a ordem em que as palavras apareceriam em um dicionário).
Como funciona:
Ele é um método que você chama a partir de uma string (por exemplo,
minhaString.CompareTo(outraString)).Ele é case-sensitive (sensível a maiúsculas e minúsculas). Isso significa que "Maçã" é diferente de "maçã".
Ele retorna um número inteiro:
0: Se as strings são exatamente iguais.Um número menor que 0: Se a string atual vem antes da string comparada na ordem do dicionário.
Um número maior que 0: Se a string atual vem depois da string comparada na ordem do dicionário.
Exemplo de Código:
Termos Técnicos:
Lexicográfico: Refere-se à ordem alfabética ou de dicionário.
Case-sensitive (sensível a maiúsculas e minúsculas): Significa que a comparação diferencia letras maiúsculas de minúsculas.
Contains(): Verificando a Presença
O método Contains() é como verificar se uma caixa de brinquedos contém um brinquedo específico. Ele verifica se uma determinada sequência de caracteres (uma "substring") está presente dentro da string atual.
Como funciona:
Ele é um método que você chama a partir de uma string (por exemplo,
minhaFrase.Contains(palavraChave)).Ele também é case-sensitive.
Ele retorna um valor booleano:
true: Se a substring for encontrada.false: Se a substring não for encontrada.
Exemplo de Código:
Termos Técnicos:
Substring: Uma parte de uma string. Por exemplo, "rato" é uma substring de "O rato roeu...".
Booleano: Um tipo de dado que pode ter apenas dois valores:
true(verdadeiro) oufalse(falso).
Equals
text.Equals(text2)
Comparação Ignorando Maiúsculas/Minúsculas (Case-Insensitive)
Muitas vezes, você não quer que a comparação seja sensível a maiúsculas e minúsculas. Para isso, você pode converter ambas as strings para o mesmo caso (tudo maiúsculo ou tudo minúsculo) antes de comparar.
Exemplo para CompareTo() e Contains():
Termos Técnicos:
ToLower()(método): Um método de string que retorna uma nova string com todos os caracteres convertidos para minúsculas.ToUpper()(método): Um método de string que retorna uma nova string com todos os caracteres convertidos para maiúsculas.
Compreender como e quando usar CompareTo() e Contains() (e como lidar com a sensibilidade a maiúsculas e minúsculas) é fundamental para manipular textos de forma eficaz em seus programas C#.