Com a massificacao dos computadores em todas as atividades do dia a dia e normal que nossos programas tenham que apresentar resultados de forma compreensivel as pessoas. Normalmente isso e feito atraves de mensagens escritas, ou seja, sequencias de caracteres encadeados. Popularmente chamadas strings.Algumas linguagens de programacao tem as strings como tipos primitivos, o que nao acontece no C#. Nesse caso, String e uma classe.Voce sabe o que e uma classe?Classe e uma estrutura de dados que contem informacoes e/ou executam funcoes.Posteriormente, entraremos nos detalhes da dinamica dos itens que compoem uma classe.Existem diversas maneiras referenciar a uma string:Descrevendo seu conteudo entre aspas duplas (String Literal) ou utilizando o identificador do objeto especificado (referencia string). Exemplo:String cadeia = new string(); String cadeia2 = "outra string";String cadeia3 = "mais " + cadeia2;String cadeia4 = new string("istringui"); Voce tambem pode usar um vetor do tipo char para definir uma string: Char[] cadeiaChar = new char[10];cadeiaChar = {'f','r','e','e','s','t','y','l','e','s'};String cadeia5 = new string(cadeiaChar, 0, 4); Deste modo a string recebera a partir da posicao 0, 4 caracteres do vetor definido acima. O resultado sera a string "free". String cadeia6 = new string('X', 6);Deste modo a string recebera o caractere X 6 vezes. O resultado sera uma string assim: "XXXXXX"Uma vez criado a string, este (e qualquer outro, na verdade) objeto dispoe de varias propriedades e funcionalidades (tambem chamadas Metodos) que auxiliam no uso e manipulacao do mesmo.O uso dos metodos faz-se atraves da formula: nomedastring.metodo(argumento(s)).Essa formula vem de um padrao de nomenclatura chamado notacao em pontos. Nem todo metodo necessita de argumentos, nesse caso os parenteses aparecem vazios. Para usar as propriedades a sintaxe e string.propriedade. Exemplo:cadeia5.Length; Essa propriedade informa o tamanho (a quantidade de caracteres) da string cadeia5. No exemplo, cadeia5.Length e igual a 5.Outros metodos bastante usados da classe string:Equals(string) (le-se Iquous)Compara as strings quanto ao conteudo e retorna True caso sejam identicas, ou False caso contrario.CompareTo(string) (le-se comperr chu)Compara as strings quanto ao conteudo e retorna 1 caso a string comparada seja "menor", -1 caso essa string seja "maior" e 0 caso as strings sejam identicas.StartsWith(string)Retorna True caso a string inicia com a string especificada nos parenteses, False caso contrario.EndsWith(string) Retorna True caso a string termina com a string especificada nos parenteses, False caso contrario.IndexOf(char ou string, [int], [int])Retorna o Indice da primeira ocorrencia da string indicada no primeiro parametro, a partir da posicao indicada pelo segundo argumento, o terceiro argumento indica quantas posicoes pesquisar apos o inicio da pesquisa. Caso nao haja ocorrencia, retorna o valor -1. IndexOfAny(char[] ou string[], [int], [int])Retorna o Indice da primeira ocorrencia de qualquer um dos elementos do vetor dado, a partir da posicao [da string] indicada pelo segundo argumento, o terceiro argumento indica quantas posicoes pesquisar apos o inicio da pesquisa. Caso nao haja ocorrencia, retorna o valor -1.LastIndexOf(char ou String,[int] ,[int]) Retorna o Indice da ultima ocorrencia da string indicada no primeiro parametro, a partir da posicao indicada pelo segundo argumento, o terceiro argumento indica quantas posicoes pesquisar apos o inicio da pesquisa. Caso nao haja ocorrencia, retorna o valor -1. LastIndexOfAny(char[] ou string[], [int],[int])