A conversão de tipos em Java é uma habilidade essencial para qualquer programador, especialmente para iniciantes. Neste artigo, vamos entender como converter números em Strings e Strings em números. Esses conceitos são fundamentais para manipular dados em programas Java, como transformar uma entrada do usuário (normalmente em texto) em um valor numérico e vice-versa.
Aqui vamos focar em dois cenários de conversão em Java:
- Converter números (inteiros ou decimais) em Strings;
- Converter Strings (texto) em números.
Convertendo Números para Strings
Primeiro, vamos explorar como transformar números em Strings, que é útil quando queremos exibir valores numéricos em forma de texto ou fazer operações com o conteúdo do número convertido.
Métodos para Converter Número para String
- Convertendo um tipo primitivo para String usando
Integer.toString()
Quando temos um número armazenado em um tipo primitivo (comoint
,double
), podemos usar a classe Wrapper correspondente para converter esse número em uma String. A classeInteger
tem o métodotoString()
que faz exatamente isso:
Aqui, Integer.toString(b)
converte o valor 99999
em uma String. E com o método .length()
, contamos quantos caracteres essa String possui, o que é útil para manipulação de texto.
2. Convertendo diretamente a partir de uma Wrapper Class
Caso você já esteja usando um Wrapper Class, como Integer
, Double
, ou Float
, pode converter para String diretamente com .toString()
:
g.toString()
aqui faz o mesmo trabalho, convertendo o valor 999999
em uma String.
3. Usando uma “Gambiarra” para conversão
Em Java, é possível transformar um número em String apenas concatenando-o com uma String vazia (""
). Essa é uma “gambiarra”, uma solução menos formal para realizar a conversão:
Convertendo Strings para Números
Agora, vamos entender como transformar uma String em um número. Isso é particularmente útil ao trabalhar com entradas de usuário, como dados inseridos em campos de texto.
Métodos para Converter String para Número
- Convertendo uma String em um número com
Double.parseDouble()
Vamos supor que o usuário digita dois números como Strings, que queremos somar. Como as entradas de dados são, por padrão, capturadas como Strings, precisamos convertê-las para números.
JOptionPane.showInputDialog()
abre uma janela para capturar texto do usuário, retornando-o como uma String.
Para converter essa String em um número do tipo double
, usamos Double.parseDouble()
:
Aqui, Double.parseDouble(valor1)
e Double.parseDouble(valor2)
convertem as Strings valor1
e valor2
em valores double
.
2. Operações com os números convertidos
Após a conversão, você pode usar esses valores numéricos em operações matemáticas, como soma e média:
Aqui, imprimimos a soma e a média dos valores. O %.2f
formata os números em duas casas decimais, o que ajuda a deixar o resultado mais legível.
3. Concatenação antes da conversão
Quando tentamos somar diretamente as Strings valor1
e valor2
sem converter, o Java simplesmente as junta, em vez de somar:
Se valor1
for “3” e valor2
for “5”, o resultado será “35”, e não 8
. Isso é um comportamento comum quando trabalhamos com Strings.
Resumo e Conclusão
A conversão entre Strings e números é uma tarefa básica, mas essencial em Java, e é muito útil para trabalhar com dados de usuário ou para preparar valores numéricos para exibição como texto. Abaixo estão as técnicas que vimos:
- Número para String:
Integer.toString()
,.toString()
da própria Wrapper Class, ou concatenando com""
. - String para Número:
Double.parseDouble()
,Integer.parseInt()
ou métodos similares de outras classes numéricas Wrapper.