Pular para o conteúdo principal

Operadores de igualdade em Java: entenda como comparar valores de forma certa

Se você já se perguntou "como comparar valores corretamente em Java?", então este post é para você!

Os operadores de igualdade são fundamentais para qualquer desenvolvedor, por permitem comparar valores e tomar decisões no código. No entanto, muitos iniciantes cometem erros ao usá-los, especialmente ao lidar com objetos e tipos primitivos. 

Se você quer dominar if statements, loops e tomas decisões inteligentes no código, continue lendo! Vamos descomplicar os operadores de igualdade em Java de uma vez por todas.

O que são operadores de igualdade?

Os operadores de igualdade servem para comparar valores e retornar um booleano (true ou false).

Existem dois principais operadores de igualdade em Java:

Operador Significado Exemplo
== Compara se dois valores são iguais if (a == b) { ... }
!= Compara se dois valores são diferentes if (a != b) { ... }

Agora, vamos ver como eles funcionam na prática.

Exemplos práticos de operadores de igualdade

Comparando números (tipos primitivos)

Aqui, x == y retorna false, porque 10 não é igual a 20.

x != y retorna true, pois 10 é diferente de 20.

Comparando caracteres

Os operadores de igualdade também funcionam com caracteres (char):

Cada caracteres tem um código Unicode, então a comparação é baseada nesses valores.

Comparando Strings (cuidado com ==!)

Agora vem um dos erros mais comuns em Java!

Por que isso acontece?

Quando uma String é criada sem new, o Java reutiliza o mesmo objeto para otimizar a memória.

Agora, veja este exemplo:

Isso acontece porque new String("Java") cria um novo objeto na memória, mesmo que o valor seja o mesmo!

A SOLUÇÃO? Usar .equals() para comparar Strings corretamente!

Comparando Objetos (cuidado com == de novo!)

O == verifica se são o mesmo objeto na memória, e não apenas se os valores são iguais.

Para comparar objetos corretamente, devemos sobrescrever o método equals().

Agora, p1.equals(p2) retornará true se os nomes forem iguais!

Erros comuns ao usar operadores de igualdade

  • Usar == para comparar Strings → sempre use .equals() para evitar bugs.
  • Usar == para comparar objetos complexos → a menos que queira comparar a referência na memória, sobrescreva equals().
  • Confundir = com == → o primeiro atribui valores, o segundo compara valores.

Isso não compila, pois a = 10 é uma atribuição e não uma comparação. O correto seria:

Os operadores de igualdade parecem simples, mas podem causar grandes erros se usados incorretamente.

  • Para tipos primitivos: use == e != sem medo.
  • Para Strings: sempre use .equals().
  • Para objetos: sobrescreva equals() para comparações corretas.

Agora que você já domina os operadores de igualdade, coloque em prática no seu código!

O que você quer ver no próximo post?

Gostou do conteúdo? Comenta aqui qual tema você quer aprender a seguir!

Comentários

Postagens mais visitadas deste blog

Instalando o Eclipse IDE no Windows: guia completo e simplificado

Se você quer desenvolver aplicações em Java, o Eclipse IDE  é uma das melhores ferramentas que você pode utilizar. Gratuito, poderoso e repleto de funcionalidades, o Eclipse é amplamente utilizado por desenvolvedores ao redor do mundo. Neste guia, você aprenderá como baixar, instalar e configurar  o Eclipse IDE no Windows , garantindo um ambiente de desenvolvimento eficiente e pronto para rodar seus projetos Java. Vamos nessa? Baixando o Eclipse IDE O primeiro passo é a versão mais recente do Eclipse. Siga os passos abaixo: Acesse o site oficial do Eclipse: https://www.eclipse.org/downloads/ .  Clique no botão "Download"  para baixar o instalador mais recente. Aguarde o download ser concluído antes de seguir para a instalação. Dica: se você deseja uma instalação mais personalizada, pode optar por baixar a versão Eclipse IDE for Java Developers , que já vem pré-configurada para desenvolvimento Java. Instalando o Eclipse IDE Após baixar o instalador, siga os passos aba...

Comandos básicos no Portugol Studio: LEIA e ESCREVA - a base de toda programação

Quando você está começando a aprender lógica de programação , é normal se perguntar: "Por onde eu começo de verdade?". A resposta é simples: por aquilo que todo programa faz - conversar com o usuário . E pra isso, você precisa dominar dois comandos essenciais: leia e escreva . Eles são o alicerce da sua comunicação com o computador. É como dizer: Ei computador! Mostra essa mensagem aqui ou Pede uma informação pra usuário e guarda essa resposta. Simples, poderoso e o primeiro passo para criar programas interativos de verdade! O que é o comando escreva ? O comando escreva serve para mostrar informações na tela . Ele é como um narrador do seu programa, que explica o que está acontecendo. Exemplo: Resultado no console: Você também pode exibir variáveis, textos combinados e até resultados de cálculos: E o comando leia ? Se escreva é falar, leia é ouvir . O comando leia permite que o usuário digite uma informação , e o programa guarde essa resposta em uma variável. Exemplo...

Instalando o OpenJDK no Windows: guia completo e descomplicado

Se você está começando a programar em Java  ou precisa configurar um ambiente de desenvolvimento Windows , instalar o OpenJDK é um passo essencial. O OpenJDK (Java Development Kit)  é uma versão open-source do Java, amplamente usada por desenvolvedores ao redor do mundo para criar aplicações robustas e seguras. Neste tutorial, você aprenderá a instalar e configurar o OpenJDK no Windows de maneira simples, rápida e eficaz . Vamos nessa? Baixando o OpenJDK Diferente do JDK da Oracle, o OpenJDK não possui um instalador automático para Windows. Mas não se preocupe, o processo ainda é fácil! Para baixar a versão mais recente do OpenJDK, siga estes passos: Acesse o site oficial do OpenJDK: https://jdk.java.net/ . Escolha a versão desejada (recomenda-se OpenJDK 21 ou superior para suporte de longo prazo - LTS). Baixe o arquivo .zip  correspondente à sua arquitetura (geralmente x64 a maioria dos computadores). Extraindo e configurando o OpenJDK Agora que você tem o OpenJDK baixad...