Manipular strings é fundamental para o desenvolvimento de qualquer aplicação. Os métodos para isso são diversos e vou citar os mais utilizados. Vamos começar pela concatenação simples, que consiste no fato de somar duas variáveis do tipo string. Vejam esse exemplo:

Manipulando Strings

A impressão da variável concatenada será:

Manipulando Strings

Percebam que houve uma fusão do conteúdo das duas variáveis dentro da variável concatenada. Esta é a forma mais simples de concatenação de strings.

Método Substring

Esse importante método serve para permitir que separemos apenas uma parte de uma string. Ao chamá-lo devemos dizer a partir de qual posição da string ele deve começar a atuar e por quantos caracteres ele atuará. É mais simples do que parece. Imaginemos uma string contendo a seguinte frase:

“C# é muito legal!”.

Se quiséssemos pegar apenas a palavra “muito”, deveríamos fazer da seguinte forma:

string teste = "C# é muito legal!";
string pedaco = teste.Substring(5,5);

Comentando esse pequeno trecho, teremos:

Manipulando Strings

Agora vejam a impressão da variável “pedaco”:

Manipulando Strings

O método Substring também aceita a passagem de somente um parâmetro. Quando isso acontece ele entende esse valor como sendo o caractere de início da ação, e, como não há um valor informando quantos caracteres ele deve ler, isso será feito até o término da string. Vejam abaixo:

Manipulando Strings

Vejam a execução:

Manipulando Strings

Método ToUpper

Esse método é muito simples. Ele simplesmente pega toda a string e a deixa em letras maiúsculas.

Manipulando Strings

Agora a variável “variavelNova” tem todos os seus caracteres em maiúsculo.

Manipulando Strings

Método ToLower

Ao contrário da ToUpper, a ToLower deixa todos os caracteres da String minúsculos.

Manipulando Strings

Método StartsWith

Esse método retorna um booleano sempre que encontra uma string que inicie com o parâmetro passado para ela. Vejam um exemplo:

Manipulando Strings

Executando teremos:

Manipulando Strings

Método EndsWith

Como o próprio nome sugere, esse método é o contrário do StartsWith. Ele verifica se uma string termina com determinada sequência de caracteres recebida como parâmetro.

Manipulando Strings

No Console teremos:

Manipulando Strings

Método Trim

Esse também é um método bastante interessante. Ele remove todos os espaços em branco contido em strings.

Manipulando Strings

Criei esse código e deixei vários espaços em branco, tanto no início quanto no final da string. No entanto, a variável nova não conterá estes espaços, conforme ilustra a execução abaixo:

Manipulando Strings

Vale ressaltar que o método Trim possui duas variações, que são o TrimStart e o TrimEnd. O primeiro remove espaços em branco apenas no início da string e o segundo remove apenas no final.

Métodos PadLeft e PadRight

Os métodos PadLeft e PadRight realizam um preenchimento na string, deixando-a com o tamanho que você desejar. Imagine que você tenha uma pequena string, de apenas dois caracteres, mas por alguma razão (normalmente usa-se isso para realizar validação de dados) queira que ela tenha 5 caracteres. Isso pode ser feito através do PadLeft ou PadRight. O primeiro efetua o preenchimento à esquerda, enquanto o segundo o faz à direita. Vamos a um exemplo para deixar bem claro:

Manipulando Strings

Se tudo deu certo, agora a variável “nova” terá 5 caracteres, sendo que os três primeiros serão espaços vazios. Vejamos no Console se isso realmente aconteceu:

Manipulando Strings

Vejam que a string parece deslocada, mas na verdade ela está com 3 caracteres de espaço inseridos antes do “Oi”.

Também é importante comentar que é possível escolher com qual caractere esse preenchimento acontecerá. No exemplo acima, como não especificamos nada, foram colocados espaços em branco, mas poderíamos, por exemplo, querer que fossem colocados caracteres “x”. Dessa forma nosso comando ficaria da seguinte forma:

Manipulando Strings

Vejamos agora se o preenchimento aconteceu corretamente no Console:

Manipulando Strings

Agora a variável contém 3 caracteres “x” no seu início. Tudo o que foi dito e feito com o PadLeft vale para o Right, mas tudo acontecerá do lado direito da string.

Método Split

Esse método pode dividir uma string e armazená-la em um vetor. A divisão acontecerá sempre que ela encontrar, dentro da string, um caracter previamente definido. É simples. Imaginemos uma string contendo uma data, da seguinte forma:

String data = 15/04/2012;

Agora, supondo que queiramos separar o dia, o mês e o ano, faremos uso do método Split da seguinte forma:

Manipulando Strings

O comando foreach foi colocado apenas para exibir todo o vetor "Partes". Vejamos como ele ficou:

Manipulando Strings

Notem que em cada posição do vetor foi colocada uma parte da variável data e o caractere que delimitou essas partes foi o ‘/’.

Método Join

Esse método faz exatamente o contrário do Split. Ele promove a fusão de dados contidos em vetores para uma única string, permitindo que especifiquemos, no seu primeiro parâmetro, um separador para eles. Vejam o exemplo:

Manipulando Strings

Vejam a saída:

Manipulando Strings

Apenas para deixar bem claro o papel do primeiro parâmetro, que no exemplo acima era um espaço em branco, vou fazer outro exemplo, agora colocando um hífen, da seguinte forma:

Manipulando Strings

Notem a diferença:

Manipulando Strings

Método Replace

Outro método muito importante, principalmente para a validação de dados antes de enviá-los a um banco de dados, por exemplo, é o Replace, que é capaz de substituir caracteres por outro previamente definido.

Imagine que você tenha um valor monetário capturado no formato R$ 250,00, mas para passá-lo ao banco de dados deve estar no formato R$ 250.00. Vejam como isso seria fácil com o Replace:

Manipulando Strings

Imprimindo a variável novoValor, teremos:

Manipulando Strings

Notem que a vírgula foi substituída pelo ponto. Esse método permite trocar qualquer coisa por qualquer coisa. Poderíamos, por exemplo, trocar uma palavra inteira por outra ou ainda mais de uma palavra por apenas outra, conforme o exemplo abaixo:

Manipulando Strings

Imprimindo a variável, teremos:

Manipulando Strings

Esse foi o método Replace. Sem dúvida você não viverá sem ele!

Método IndexOf

Este método nos informa em qual posição de uma string um determinado caractere está ou uma sequência de caracteres começa. É bem simples e útil, vejam:

Manipulando Strings

Como o retorno dessa função é um número inteiro que indica a posição do caractere na string, defini a variável ‘posicao’ para recebê-lo.

Vejamos a saída:

Manipulando Strings

Como procurávamos o caractere ‘p’, ele retornou a posição 7, pois o início da contagem é sempre a partir do zero.

Caso procurássemos uma sequência maior de caracteres, ele retornaria a posição do primeiro caractere dela, ou seja, a posição em que ela se inicia, conforme o exemplo abaixo:

Manipulando Strings

Rodando esse código teremos:

Manipulando Strings

Caso procurássemos um caractere ou um trecho que não está presente na string, ele retornaria o valor -1.

Esse foi o método IndexOf e com ele encerro a sequência de métodos que selecionei para manipular strings. Caso algum deles não tenha ficado claro, leia novamente sua explicação. Eles serão muito úteis para o desenvolvimento de qualquer aplicação.


HARDWARE

Entendendo o seu computador

O que há dentro do meu computador?

Existem alguns componentes fundamentais presentes dentro do seu computador e é muito importante que você conheça um pouco sobre eles, seja para argumentar com algum vendedor durante a compra de um novo PC ou para identificar alguma atitude desleal de algum técnico que esteja te passando um orçamento para reparo. Na seção Raio-X aqui do Contém Bits você pode conhecer e entender mais detalhadamente sobre cada componente, ou também pode clicar abaixo no componente que deseja, para conhecê-lo melhor.

  • Gabinetes

  • Placas-Mãe

  • Processadores

  • Memória

  • Fontes

  • Drives Ópticos

  • Discos Rígidos

  • SSD

  • Placas de Som

  • Placas de Vídeo

Você Sabia?

Desde o seu lançamento, em 1985, o fantástico jogo Tetris vende pelo menos 70 milhões de unidades por ano em todo o mundo! Os dados são oficiais e fornecidos pela THQ, uma das distribuidoras do título.


A empresa Take-Two pagou à Infogrames mais de 22 milhões de dólares pelos direitos de Civilization, em novembro de 1994. Ainda sobre este título, Sid Meier, um dos seus fundadores, é o profissional da área dos games mais premiado em todo o mundo.


A IBM detém o recorde de patentes em um único ano, atingindo a marca de 4186 registros no ano de 2008. Clique aqui e saiba mais sobre esta gigante do mundo da tecnologia.


Em 1949 a revista Popular Mechanics fez uma previsão para o futuro, dizendo: "Um dia os computadores pesarão menos do que 1,5 tonelada". E pensar que temos smartphones capazes de realizar milhões de vezes mais operações do que os computadores daquela época.


O título Asteroids, do Atari, possui recorde de pontuação há 30 anos. Em 1982 um americano chamado Scott Safran atingiu a marca de 41.336.440. Atualmente ele faz parte de um minúsculo grupo de jogadores que conseguiram manter seus recordes por mais de 30 anos.