Trabalhando com texto em Java - Easy Java Magazine 1
O artigo retrata sobre a manipulação de texto em Java utilizando as classes String, StringBuffer e StringBuilder, e como melhorar a utilização de memória, o desempenho do código e facilitar a sua manutenção trabalhando com objetos dessas três classes.
Easy Java Magazine 1
[Artigo já está disponível no Leitor Digital DevMedia®. Clique aqui para acessá-lo]
> Clique aqui para ler todos os artigos da Easy Java Magazine 1
[Artigo já está disponível no Leitor Digital DevMedia®. Clique aqui para acessá-lo]
> Clique aqui para ler todos os artigos da Easy Java Magazine 1
Trabalhando com texto em Java
Neste artigo serão demonstradas algumas maneiras de como trabalhar com “texto” na linguagem de programação Java. Das opções disponíveis, String, StringBuffer e StringBuilder são certamente as classes mais utilizadas. Cada uma delas apresenta particularidades com relação à criação de objetos na memória e no relacionamento com as variáveis de referência, assim como apresentam também métodos específicos para a manipulação de seus conteúdos.
Por isso, abordaremos como fazer uso destas classes de maneira eficiente e as melhores situações onde utilizar cada uma delas.
O que são Strings?
Em Java, String é uma sequência de caracteres utilizada para representação e manipulação de texto. Quando é necessário representar informações textuais em uma aplicação, seja ela para Desktop ou Web, como nome de pessoas, informações sobre endereço ou comentários em uma matéria no jornal, instâncias da classe String serão criadas invariavelmente. Isto é, sempre que precisarmos mostrar alguma informação em um sistema, dificilmente vamos conseguir isso sem o auxílio de Strings.
Em uma visão mais técnica, String é uma classe presente no Java desde a versão 1.0 do JDK que implementa a interface CharSequence (além de Serializable e Comparable, mas essas duas não são interessantes para este artigo). Assim, podemos dizer que Strings nada mais são do que uma cadeia ordenada de caracteres.
Como utilizar Strings em Java
A classe String permite a criação de suas instâncias de diversas maneiras. Ela possui vários construtores que recebem diversos tipos de parâmetros. Pelo fato de ser uma classe amplamente utilizada, ela também fornece um “atalho” para a criação de forma mais rápida de seus objetos, como pode ser observado no código da Listagem 1.
Listagem 1. Maneiras de declarar e inicializar Strings.
1 package principal;
2
3 public class ClassePrincipal {
4
5 public static void main(String[] args) {
6 String minhaString1 = new String();
7 minhaString1 = "Java";
8 String minhaString2 = "Java";
9 String minhaString3 = new String("Java");
10 String minhaString4 = "";
11
12 char[] meusChars = new char[] {'J','a','v','a'};
13 String minhaString5 = new String(meusChars);
14 }
15 }
Vamos à explicação dos pontos pertinentes:
• Linha 6: A classe String, assim como qualquer classe em Java, pode ser instanciada com a utilização da palavra chave new. Neste caso, está sendo criado um objeto String vazio que é atribuído à variável de referência minhaString1;
"
ATENÇÃO! A exibição deste artigo foi interrompida.
Clique aqui e acesse o Leitor Digital DevMedia para ler este artigo completo.
Neste artigo serão demonstradas algumas maneiras de como trabalhar com “texto” na linguagem de programação Java. Das opções disponíveis, String, StringBuffer e StringBuilder são certamente as classes mais utilizadas. Cada uma delas apresenta particularidades com relação à criação de objetos na memória e no relacionamento com as variáveis de referência, assim como apresentam também métodos específicos para a manipulação de seus conteúdos.
Por isso, abordaremos como fazer uso destas classes de maneira eficiente e as melhores situações onde utilizar cada uma delas.
O que são Strings?
Em Java, String é uma sequência de caracteres utilizada para representação e manipulação de texto. Quando é necessário representar informações textuais em uma aplicação, seja ela para Desktop ou Web, como nome de pessoas, informações sobre endereço ou comentários em uma matéria no jornal, instâncias da classe String serão criadas invariavelmente. Isto é, sempre que precisarmos mostrar alguma informação em um sistema, dificilmente vamos conseguir isso sem o auxílio de Strings.
Em uma visão mais técnica, String é uma classe presente no Java desde a versão 1.0 do JDK que implementa a interface CharSequence (além de Serializable e Comparable, mas essas duas não são interessantes para este artigo). Assim, podemos dizer que Strings nada mais são do que uma cadeia ordenada de caracteres.
Como utilizar Strings em Java
A classe String permite a criação de suas instâncias de diversas maneiras. Ela possui vários construtores que recebem diversos tipos de parâmetros. Pelo fato de ser uma classe amplamente utilizada, ela também fornece um “atalho” para a criação de forma mais rápida de seus objetos, como pode ser observado no código da Listagem 1.
Listagem 1. Maneiras de declarar e inicializar Strings.
1 package principal;
2
3 public class ClassePrincipal {
4
5 public static void main(String[] args) {
6 String minhaString1 = new String();
7 minhaString1 = "Java";
8 String minhaString2 = "Java";
9 String minhaString3 = new String("Java");
10 String minhaString4 = "";
11
12 char[] meusChars = new char[] {'J','a','v','a'};
13 String minhaString5 = new String(meusChars);
14 }
15 }
Vamos à explicação dos pontos pertinentes:
• Linha 6: A classe String, assim como qualquer classe em Java, pode ser instanciada com a utilização da palavra chave new. Neste caso, está sendo criado um objeto String vazio que é atribuído à variável de referência minhaString1;
"
ATENÇÃO! A exibição deste artigo foi interrompida.
Clique aqui e acesse o Leitor Digital DevMedia para ler este artigo completo.

19 COMENTÁRIOS
José Ailton Dos Santos
Muito bom o artigo, tirou muitas dúvidas
[há +1 ano] -
Responder

José Ailton Dos Santos
Muito bom o artigo, tirou muitas dúvidas
[há +1 ano] -
Responder
Erivando S. Ramos
melhor ainda se vier impressa você concorda?
é so a devmedia
fazer replantio de arvores e tudo fica ecologicamente correto!
é so a devmedia
fazer replantio de arvores e tudo fica ecologicamente correto!
[há +1 ano] -
Responder

Silvio Percicotte Junior
Muito boa essa revista, sou professor do Senac e está sendo muito util para as aulas.
Valeu!
Valeu!
[há +1 ano] -
Responder

Ricardo Padua Crispim
Muito legal este artigo e esta publicação. Ótima idéia fazer essa revista!!!
[há +1 ano] -
Responder

Brustolin

Parabens ao pessoal da DevMedia e todos seus colaboradores!
Está aí o que precisavamos!
[há +1 ano] -
Responder

André Diniz
Didático e útil.
[há +1 ano] -
Responder

Edmo Magalhães
Sinceramente, em uma primeira impressão desejei assinar imediatamente uma versão impressa, mas depois de navegar pelas páginas da revista penso que é uma experiência interessante poder desfrutar da revista na versão digital. Contudo, peço que pensem em uma versão para ipad, aí ficaria perfeito.
Ademais, parabenizo imensamente pela idéia da easy Java, simplesmente genial.
Parabéns.
[há +1 ano] -
Responder

Wilerson Lucas
- Linha 5: Novamente uma String é criada no
pool, como resultado da execução do método replace(): “Meu nome sempre
foi ”. Esta nova String é associada à variável de referência s4. Vale a
pena ressaltar que as variáveis s1 e s3 ainda fazem referência à String
“Meu nome era ”. Se a String referenciada por s1 tivesse sido alterada
na linha 9, o resultado da linha 10 não seria o esperado, pois como s3
também referencia a mesma String, o método replace() não teria feito nenhuma alteração. Há também a
criação da String “sempre foi” no pool;
O correto não seria linha 4 e 5 ?;
Obrigado pela excelente revista.
O correto não seria linha 4 e 5 ?;
Obrigado pela excelente revista.
[há +1 ano] -
Responder
[autor]
Michel De Lara
Prezado Wilerson,
Sua observação está correta! Realmente este detalhe passou despercebido.
Obrigado pela ajuda!
Um abraço!
Michel
[há +1 ano] -
Responder

Alexandre Lins Viturino
Excelente, muito importante para quem esta começando a programa em Java.
[há +1 mês] -
Responder

Andre Luiz De Oliveira
Muito pratico, excelente e fácil, o conteúdo esta bem fácil de entender, e diferente dos meus amigos dos outros comentários eu não acho necessário uma versão impressa, vamos acabar com o uso de papeis, dificuldades use tablets afinal somos da área da tecnologia. Agora as paginas bem que podia aceitar comando do teclado para mudar de pagina ficaria bem mais fácil.
[há +1 mês] -
Responder
Devmedia - Equipe De Moderacao
André, existe teclas de atalho sim, são elas:
CTRL+Q Artigo anterior
CTRL+W Próximo artigo
CTRL+A Primeira página do artigo
CTRL+S Página anterior
CTRL+D Próxima página
CTRL+F Última página do artigo
F11 Tela inteira
para acessá-las, basta ir na opção menu, no topo do leitor digital.
CTRL+Q Artigo anterior
CTRL+W Próximo artigo
CTRL+A Primeira página do artigo
CTRL+S Página anterior
CTRL+D Próxima página
CTRL+F Última página do artigo
F11 Tela inteira
para acessá-las, basta ir na opção menu, no topo do leitor digital.
[há +1 mês] -
Responder
Andre Luiz De Oliveira
Poh! Então ta tudo perfeito agora
[há +1 mês] -
Responder

Eduardo Dicarte Pereira
Muito bem explicado. Deu pra revisar e ainda aprender mais alguma coisa.
[há +1 mês] -
Responder

Flavio Andrade Machado
Parabéns, muito bom o artigo!
[há +1 mês] -
Responder

Wellerson Aparecido Da Costa
Corrigir:
Alterar o texto #Aqui a impressão será “Gosto de comer frango com polenta. Não gosto de comer polenta frita.”# por #Aqui a impressão será “Gosto de comer frango com polenta. Não gosto de polenta frita.”#
Alterar o texto #Aqui a impressão será “Gosto de comer frango com polenta. Não gosto de comer polenta frita.”# por #Aqui a impressão será “Gosto de comer frango com polenta. Não gosto de polenta frita.”#
[há 19 dias] -
Responder
Wesley Yamazack
Olá Wellerson, o problema foi resolvido, obrigado pelo aviso.
Um abraço.
Um abraço.
[há 15 dias] -
Responder
[Este post ainda não foi associado a uma sequência]
Você está em:
canal Java
Michel De Lara
Space do autor
É Tecnólogo em Informática pela UFPR com especialização em Tecnologia da Informação. Atualmente cursa MBA Executivo em Gestão de Projetos na ESIC-PR. Em TI, atua há aproximadamente 5 anos, exercendo atividades de programação e análise de sistemas orientados a objetos. Possui as certificações SCJA (9...
Space do autor



1
0
