Publicado em

Métodos III em Java

Partilhar:

Introdução

Manipular e comparar strings são operações comuns na programação. Neste artigo, aprofundamos os métodos equals() e replace(), esclarecendo suas aplicações e nuances.

Método equals()

O que é?

Este método permite comparar o conteúdo de duas strings, verificando se são idênticas.

Características

  1. Tipo de Comparação: equals() compara o conteúdo das strings, e não as suas referências.
  2. Retorno: Devolve true se as strings forem iguais e false caso contrário.
  3. Sensível a Maiúsculas/Minúsculas: "Java" é diferente de "java".

Exemplo Adicional

Verificar se a senha inserida pelo utilizador é a correta.

String senhaArmazenada = "segredo123";
String senhaInserida = "Segredo123";

if(senhaInserida.equals(senhaArmazenada)) {
    System.out.println("Senha correta!");
} else {
    System.out.println("Senha incorreta!");
}

Método replace()

O que é?

Permite substituir caracteres ou sequências de caracteres numa string por outros caracteres ou sequências.

Características

  1. Versatilidade: Pode substituir um único caráter ou uma sequência completa.
  2. Imutabilidade: Strings em Java são imutáveis. O método replace() devolve uma nova string com as substituições realizadas.

Exemplo Adicional

Imagine que você quer formatar uma data de "AAAA-MM-DD" para "DD/MM/AAAA".

String data = "2022-04-12";
String dataFormatada = data.replace("-", "/");
System.out.println(dataFormatada);  // 12/04/2022

Exemplo Prático

package com.caffeinealgorithm.programaremjava;

public class MetodosIII {
  private String a = "Nelson", b = "Nelson", c = "Silva";
  private String lingProgPreferida = "A minha linguagem preferida já foi o Java.";

  public void Run() {
    // equals()
    System.out.printf("a == b : %b\n", a.equals(b));
    System.out.printf("b == c : %b\n", b.equals(c));

    // replace()
    System.out.println(lingProgPreferida);
    System.out.println(lingProgPreferida.replace("já foi", "é"));
  }
}

/*
  a == b : true
  b == c : false
  A minha linguagem preferida já foi o Java.
  A minha linguagem preferida é o Java.
*/

Quando usar?

  1. Autenticação: equals() é crucial ao comparar senhas ou outras credenciais.
  2. Manipulação de Texto: replace() é excelente para reformatar textos, corrigir erros comuns ou alterar palavras/termos.

Conclusão

Os métodos equals() e replace() são ferramentas essenciais no arsenal de qualquer programador Java. Proporcionam rapidez e precisão na manipulação e comparação de strings, tornando a codificação mais eficiente e intuitiva.

Happy coding!