Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Imutabilidade de Strings em Java | Strings
Introdução ao Java

Imutabilidade de Strings em Java

Deslize para mostrar o menu

Você já sabe que Strings armazenam textos como nomes de clientes, nomes de produtos e mensagens. Mas algo que torna as Strings especiais em Java é que elas são imutáveis.

Imutabilidade significa que, uma vez que um objeto String é criado, seu conteúdo não pode ser alterado. Qualquer operação que pareça modificar uma string, na verdade, cria um novo objeto String nos bastidores.

Exemplo

Main.java

Main.java

123456789101112131415
package com.example; public class Main { public static void main(String[] args) { int stock = 20; String drink = "Espresso"; stock = 15; drink = "Cappuccino"; System.out.println(stock); // 15 System.out.println(drink); // Cappuccino } }

Mesmo que ambas as variáveis tenham sido reatribuídas, elas se comportam de maneira diferente internamente. Com int, a variável armazena diretamente o valor — a reatribuição simplesmente o substitui. Mas String é um tipo de referência, o que significa que a variável armazena um endereço apontando para um objeto String na memória. Quando drink = "Cappuccino" é atribuído, o Java não modifica "Espresso" — ele cria um novo objeto String e faz com que drink aponte para ele. O objeto original "Espresso" permanece inalterado.

Como Funciona Passo a Passo

String drink = "Espresso";

O Java cria um objeto String "Espresso" e drink aponta para ele.

drink = "Cappuccino";

O Java cria um novo objeto String "Cappuccino", drink agora aponta para o novo. "Espresso" permanece inalterado.

question mark

O que significa que Strings são imutáveis em Java?

Selecione a resposta correta

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 4. Capítulo 1

Pergunte à IA

expand

Pergunte à IA

ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

Imutabilidade de Strings em Java

Você já sabe que Strings armazenam textos como nomes de clientes, nomes de produtos e mensagens. Mas algo que torna as Strings especiais em Java é que elas são imutáveis.

Imutabilidade significa que, uma vez que um objeto String é criado, seu conteúdo não pode ser alterado. Qualquer operação que pareça modificar uma string, na verdade, cria um novo objeto String nos bastidores.

Exemplo

Main.java

Main.java

123456789101112131415
package com.example; public class Main { public static void main(String[] args) { int stock = 20; String drink = "Espresso"; stock = 15; drink = "Cappuccino"; System.out.println(stock); // 15 System.out.println(drink); // Cappuccino } }

Mesmo que ambas as variáveis tenham sido reatribuídas, elas se comportam de maneira diferente internamente. Com int, a variável armazena diretamente o valor — a reatribuição simplesmente o substitui. Mas String é um tipo de referência, o que significa que a variável armazena um endereço apontando para um objeto String na memória. Quando drink = "Cappuccino" é atribuído, o Java não modifica "Espresso" — ele cria um novo objeto String e faz com que drink aponte para ele. O objeto original "Espresso" permanece inalterado.

Como Funciona Passo a Passo

String drink = "Espresso";

O Java cria um objeto String "Espresso" e drink aponta para ele.

drink = "Cappuccino";

O Java cria um novo objeto String "Cappuccino", drink agora aponta para o novo. "Espresso" permanece inalterado.

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 4. Capítulo 1
some-alt