Olá Sadão,
Tudo bem com você?
Para permitir que o usuário insira a altura utilizando uma vírgula como separador decimal, você pode usar uma função de validação para converter automaticamente a vírgula em um ponto antes de processar o valor da altura. Aqui está um exemplo de como fazer isso em Java:
public static double validarAltura(String altura) {
double alturaConvertida = 0.0;
try {
alturaConvertida = Double.parseDouble(altura.replace(",", "."));
} catch (NumberFormatException e) {
// Caso ocorra algum erro na conversão, você pode tratar aqui
}
return alturaConvertida;
}
Nesse exemplo, a função validarAltura recebe uma string altura como parâmetro e tenta converter o valor para um número de ponto flutuante usando o método Double.parseDouble. Antes da conversão, a função substitui qualquer vírgula presente na string por um ponto usando o método replace(",", ".").
Dessa forma, se o usuário digitar "1,70" como altura, a função irá convertê-lo para "1.70" antes de convertê-lo em um número. Isso permite que o usuário utilize a vírgula como separador decimal sem que o Java gere um erro "NAN".
Você pode usar essa função em conjunto com outras validações para garantir que o valor inserido pelo usuário esteja correto antes de processá-lo. Por exemplo, você pode verificar se a altura está dentro de um determinado intervalo ou se está em um formato válido.
Espero ter ajudado.