Como remover acentos e outros sinais gráficos de uma String em Java?

Para remover acentos e outros sinais gráficos de uma String em Java, você pode utilizar a classe Normalizer em conjunto com expressões regulares.

Primeiro, você precisa importar a classe Normalizer:

import java.text.Normalizer;

Em seguida, você pode utilizar o método normalize da classe Normalizer para normalizar a String, removendo os acentos e outros sinais gráficos. O método normalize recebe dois parâmetros, o primeiro é o tipo de normalização e o segundo é a String a ser normalizada. No nosso caso, vamos utilizar o tipo de normalização Form.NFD para decompor os caracteres acentuados em caracteres básicos e diacríticos e, em seguida, remover os diacríticos utilizando uma expressão regular:

String texto = "Olá, você está bem?";
String textoSemAcentos = Normalizer.normalize(texto, Normalizer.Form.NFD)
        .replaceAll("\\p{InCombiningDiacriticalMarks}+", "");

No exemplo acima, a variável textoSemAcentos irá armazenar a String “Ola, voce esta bem?”.

Dessa forma, você pode remover os acentos e outros sinais gráficos de uma String em Java.