[Tutorial Java] Diferenças entre as classes String, StringBu
2 participantes
Página 1 de 1
[Tutorial Java] Diferenças entre as classes String, StringBu
Estarei mostrando aqui no meu primeiro tutorial um assunto muito interessante quando falamos de Java, que são as classes String, StringBuffer e StringBuilder, espero que vocês gostem!!!
String
A classe String com certeza é uma das principais classes da linguagem Java, esta classe é responsável pelo armazenamento de dados do tipo texto, as principais características da classe String são:
Um objeto imutável quando criado na memória nunca terá seu valor alterado, no exemplo iremos demonstrar esta situação:
[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]
StringBuffer
A classe StringBuffer é geralmente utilizada quando precisamos armazenar um grande número de caracteres, as principais características da classe StringBuffer são:
Exemplo da utilização da classe StringBuffer:
[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]
StringBuilder
A classe StringBuilder é similar a classe StringBuffer, a única diferença é que os seus métodos não são synchronized.
Esta classe é indicada quando não é necessário ter o controle sobre as thread que irão modificar o conteúdo da instância, por isso esta classe é mais utilizada do que a classe StringBuffer.
Exemplo da utilização da classe StringBuilder:
[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]
Com isso podemos concluir que a concatenação de um StringBuilder comparado com a String é muito mais rápida, isto porque um objeto String é imutável, e o StringBuilder é um objeto mutável.
Vale lembrar que a unica diferença entre StringBuffer e a StringBuilder, é que todos os métodos da StringBuffer são synchronized, enquando os da StringBuilder não são.
Créditos: Hyon
String
A classe String com certeza é uma das principais classes da linguagem Java, esta classe é responsável pelo armazenamento de dados do tipo texto, as principais características da classe String são:
- Seu nome completo é java.lang.String;
- É um objeto imutável, ou seja, depois que criado seu conteúdo jamais é alterado;
- É uma classe final, ou seja, não pode ser herdada por nenhuma outra classe.
Um objeto imutável quando criado na memória nunca terá seu valor alterado, no exemplo iremos demonstrar esta situação:
[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]
- É criado uma string com o conteudo “oficina da”;
- É criado uma string com o conteudo “net”;
- É criado uma nova string com o conteudo “oficina da net”;
- As strings “oficina da ” e “net” estão sem referência,
* ou seja, estão disponiveis para o gargage collector.
As strings “oficina da ” e “net” estão sem referência, ou seja, estão disponíveis para o gargage collector.
StringBuffer
A classe StringBuffer é geralmente utilizada quando precisamos armazenar um grande número de caracteres, as principais características da classe StringBuffer são:
- Seu nome completo é java.lang.StringBuffer;
- É um objeto mutável, ou seja, o seu valor pode ser alterado, isso significa que o valor armazenado em sua instância pode ser alterado;
- É uma classe final, não pode ser herdada por nenhuma outra classe;
- Todos os seus métodos são synchronized, assim é uma classe preparada para um ambiente onde se utiliza os recursos de muilti-thread.
Exemplo da utilização da classe StringBuffer:
[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]
- É armazenado uma String com o valor “oficina”, através da chamada do método append;
- É concatenado o valor de “da “, agora temos na StringBuffer o valor de”oficina da “;
- É concatenado a variável nome o valor de “net”, agora temos na StringBuffer o valor de “oficina da net”.
StringBuilder
A classe StringBuilder é similar a classe StringBuffer, a única diferença é que os seus métodos não são synchronized.
Esta classe é indicada quando não é necessário ter o controle sobre as thread que irão modificar o conteúdo da instância, por isso esta classe é mais utilizada do que a classe StringBuffer.
Exemplo da utilização da classe StringBuilder:
[Tens de ter uma conta e sessão iniciada para poderes visualizar esta imagem]
- É armazenado na instância de nome o valor de “oficina”, através da chamada do método append;
- É concatenado a variável nome o valor de “da “, agora temos na StringBuilder o valor de “oficina da “;
- É concatenado a variável nome o valor de “net”, agora temos na StringBuilder o valor de “oficina da net”.
Com isso podemos concluir que a concatenação de um StringBuilder comparado com a String é muito mais rápida, isto porque um objeto String é imutável, e o StringBuilder é um objeto mutável.
Vale lembrar que a unica diferença entre StringBuffer e a StringBuilder, é que todos os métodos da StringBuffer são synchronized, enquando os da StringBuilder não são.
Créditos: Hyon
Lottus- Membros
- Mensagens : 23
Coins : 20086
Reputação : 25
Idade : 31
Re: [Tutorial Java] Diferenças entre as classes String, StringBu
E aí mano, eu tinha uma duvida StringB q vc tir
ou agora. Valeu
ou agora. Valeu
Rolls- Moderador Master
- Mensagens : 1135
Coins : 22138
Reputação : 93
Idade : 34
Tópicos semelhantes
» [Tutorial] Diferenças entre compiladores e interpretadores
» Apostila de Java Basico
» [Vagas Abertas]Entre para STAFF
» [GFX] [Tutorial] Goblin Tutorial
» [GFX] [Tutorial] tag tutorial from the dark
» Apostila de Java Basico
» [Vagas Abertas]Entre para STAFF
» [GFX] [Tutorial] Goblin Tutorial
» [GFX] [Tutorial] tag tutorial from the dark
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos
Dom Nov 01, 2020 12:09 am por AyOria
» Styles para Photoshop - Mega coleção WDG
Dom Nov 01, 2020 12:07 am por AyOria
» Estilos/Styles by ~TinoArca
Dom Nov 01, 2020 12:05 am por AyOria
» Collections of Text Layer Styles #3 for Photoshop
Dom Nov 01, 2020 12:05 am por AyOria
» 35 Styles de Ouro para Photoshop
Dom Nov 01, 2020 12:04 am por AyOria
» Styles Tech
Dom Nov 01, 2020 12:02 am por AyOria
» [Epic Styles [ 3 ]
Dom Nov 01, 2020 12:01 am por AyOria
» Super Pack Styles
Sáb Out 31, 2020 11:59 pm por AyOria
» ZoomFx Styles
Seg maio 08, 2017 2:26 am por Sagat10