Lógica e Algoritmos com Java

19 - Conversão de dados

Em Java, frequentemente precisamos realizar conversões de tipos de dados entre diferentes formatos. Algumas conversões são feitas de forma explícita, utilizando métodos da própria linguagem. Dois exemplos muito comuns são as conversões entre String e int.

1. String.valueOf()

O método String.valueOf() é usado para converter diversos tipos de dados em uma String. Ele pode ser aplicado a objetos, primitivos (como int, double, boolean, etc.) e até arrays. Este método é útil para garantir que você tenha uma representação de string de qualquer valor.

        
int num = 123;
String str = String.valueOf(num); // Converte int para String
System.out.println(str);  // Saída: "123"
        
    

No exemplo acima, o inteiro num foi convertido para a String str. O método valueOf pode ser usado para diferentes tipos, como mostrado na tabela abaixo.

2. Integer.parseInt()

O método Integer.parseInt() é utilizado para converter uma String que representa um número inteiro em um valor primitivo int. Se a string não puder ser convertida em um número, o método lançará uma exceção NumberFormatException.

        
String str = "456";
int num = Integer.parseInt(str); // Converte String para int
System.out.println(num);  // Saída: 456
        
    

No exemplo acima, a string "456" foi convertida para o valor inteiro num. Se a string contiver caracteres não numéricos, a conversão falhará.

3. Tabela de Conversões de Tipos com String.valueOf e Integer.parseInt

Conversão Descrição Exemplo de Código
String.valueOf(int) Converte um valor inteiro para uma String. String str = String.valueOf(123); // int para String
String.valueOf(double) Converte um valor double para uma String. String str = String.valueOf(12.34); // double para String
String.valueOf(boolean) Converte um valor booleano para uma String. String str = String.valueOf(true); // boolean para String
String.valueOf(Object) Converte um objeto para uma String, invocando o método toString() do objeto. String str = String.valueOf(new Object()); // Objeto para String
Integer.parseInt(String) Converte uma String que contém um número inteiro em um valor int. int num = Integer.parseInt("123"); // String para int
Integer.parseInt(String, radix) Converte uma String que representa um número em uma base específica (radix) para int. int num = Integer.parseInt("A", 16); // String "A" para int com base 16 (hexadecimal)

4. Exemplos de Conversão em Código

Exemplo 1: String.valueOf()

        
public class ConversaoValueOf {
    public static void main(String[] args) {
        int num = 123;
        String str = String.valueOf(num);  // Converte int para String
        System.out.println(str);  // Saída: "123"
    }
}
        
    

Exemplo 2: Integer.parseInt()

        
public class ConversaoParseInt {
    public static void main(String[] args) {
        String str = "456";
        int num = Integer.parseInt(str);  // Converte String para int
        System.out.println(num);  // Saída: 456
    }
}