Pular para o conteúdo principal

Métodos Utilitários da Classe String

Olá pessoal, hoje iremos abordar dicas de utilização de alguns métodos utilitários da classe String, estes ajudam muito no desenvolvimento de rotinas onde manipulamos Strings diversas.

Iremos abordar os seguintes métodos:
  • charAt(int index);
  • concat(String str);
  • contains(String str);
  • equals(String str);
  • length().

charAt(int index)
Este método é utilizado para recuperar um determinado char dentro de uma String, vamos simular a criação de uma String para analisar como este método funciona:


concat(String str)

Em Java é muito comum unir os valores de várias Strings em apenas uma, esta operação chamamos de concatenação, a classe String possui um método utilitário que ajuda a realizar esta operação, vamos analisar seu funcionamento:


contains(String str)

O método contains é muito utilizado quando manipulamos Strings, com ele podemos analisar se um determinado trecho de texto esta ou não dentro da String, este método retorna um valor boolean onde diz se a String possui ou não a sequência de chars passada como parâmetro, vamos analisar seu funcionamento:
















equals(String str)

Sem dúvida este é um dos métodos mais importantes para qualquer classe, este método é herdado da classe Object, que é a superclasse de qualquer hierarquia de classes Java.

Na classe Object a implementação de equals(Object obj) é muito simples e compara apenas se as referências apontam para o mesmo objeto, já na classe String temos uma implementação pronta onde oque é avaliado é o conteúdo do objeto.

A criação de objetos Strings em Java possui algumas particularidades que ajudam no desenvolvimento e desempenho do sistema, um que devemos entender é o conceito de Pool de Strings.

Ao criar Strings de forma literal e com o mesmo conteúdo, a JVM consegue manipular o uso dos objetos fazendo com que várias referências apontem para uma única instância de String, isso é possível pois todo objeto String é imutável, oque garante que a alteração de conteúdo não cause impacto nas outras referências que usem o mesmo objeto, este recurso de reaproveitamento de instâncias, é conhecido como Pool de Strings.

Vamos analisar um código onde iremos utilizar o operador == para avaliar Strings, segue o código:


























Agora vamos analisar as mesmas comparações com o método equals da classe String, segue o código:
























length()

Este método retorno um int contendo o total de chars que uma determinada String possui, com isto podemos navegar em cada char e manipular da forma que desejamos, vamos analisar o funcionamento do método:




















A classe String é uma das mais utilizadas ao desenvolver sistemas utilizando a linguagem Java, acima pudemos analisar o funcionamento de alguns métodos utilitários que a compõem, mas esta classe possui muito outros métodos interessantes, para mais detalhes consulte o JavaDoc no site da Oracle:

http://docs.oracle.com/javase/7/docs/api/java/lang/String.html

Até a próxima.

Comentários

Postagens mais visitadas deste blog

Utilizando LocalDate, LocalDateTime e LocalTime na Prática

Tudo bem pessoal, hoje iremos avaliar e analisar operações de manipulação de Datas envolvendo a JavaTime API introduzida no Java 8.

Exemplos da java.time API
Já se passaram alguns anos desde o lançamento do Java 8 e mesmo após este período, há empresas que desconhecem o poder da java.time API, esta foi uma nova API de datas introduzida no Java 8 visando resolver problemas que tínhamos com as velhas classes Date e Calendar.

Vamos mostrar vários exemplos práticos do uso da API:
Criação de objetos No exemplo abaixo, estamos criando os objetos para manipulação de datas, perceba que temos 3 tipos, sendo LocalDate para manipular datas, LocalDateTime para manipular data/hora e LocalTime para horas:
LocalDate localDate = LocalDate.now(); LocalDateTime localDateTime = LocalDateTime.now(); LocalTime localTime = LocalTime.now();
Utilizando formatação Aqui realizamos a operação de formatação, perceba que não foi necessário utilizar a classe SimpleDateFormat, que usaríamos em conjunto com D…

Lendo e Manipulando arquivos CSV com Java

Olá hoje veremos como realizar a leitura e manipulação de arquivos CSV com Java, mostrando que as novas versões da plataforma Java deixaram algumas tarefas simples de serem realizadas.

Exemplo de Arquivo Hoje em dia é comum ao realizar integrações ou carga de dados o uso de arquivos CSV, isto porque, este arquivo possui uma estrutura de fácil entendimento e simples de manipular na maioria das plataformas de desenvolvimento.

Para realizar a leitura dos dados vamos manipular um arquivo com as seguintes colunas: namecpfagephone address:

name;cpf;age;phone;address caio;123456789;20;1145223643;AvenidaPaulista vinicius;147852369;18;1125253625;AvenidaManoel sandra;963258741;30;1174587858;RuaTeixeira regina;125478522;40;1145254536;RuaFernando fernando;785245563;42;1145253669;RuaPereira augusto;456123014;50;1125363633;AvenidaPaulinia maria;456123789;10;1125455525;AvenidaNossaSenhora
Para representar os dados em objetos Java iremos utilizar a seguinte classe:

importlombok.AllArgsConstruc…

Versionamento de Banco Dados com Flyway

Olá pessoal, hoje iremos analisar e aprender como realizar o versionamento e gerenciamento das bases de dados relacionais utilizando o framework Flyway.

Versionamento de Banco Dados Ao trabalhar com desenvolvimento de sistemas é comum realizarmos o versionamento, isso porque uma aplicação pode necessitar de correções, novas funcionalidades e evoluções, onde para garantir a compatibilidade e cuidar do seu ciclo de vida, geramos versões onde é especificado quais itens estão presentes em cada release.
Vamos imaginar seguinte cenário: Sistema ERP1.0.0: Entrega dos módulos Financeiro e RH;1.1.0: Entrega do módulo Contas a Receber. Perceba que a ideia é controlar o que cada versão possui de diferente, e para controlar essas mudanças no lado da aplicação existem várias técnicas e ferramentas, mas e para controlar as mudanças no lado do Banco de dados ? 
Para isso podemos utilizar ferramentas de versionamento que ajudam a realizar este controle, a ferramenta que iremos utilizar é o Flyway.
Con…