Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Type Casting do tipo String

Olá, apenas por curiosidade, por que eu não consigo fazer o Type Casting de String para Double? É possível converter de alguma outra forma?

 String nome = "Andre";
        double idade = (double) nome;
1 resposta
solução!

Oi Andre, tudo bem?

O Type Casting só funciona com tipos primitivos, e em Java a String é um objeto, por isso ocorre um erro de incompatibilidade.

Claro, existe uma forma de converter String para double, utilizando um método/função da classe Double. Quando entrarmos em Orientação a Objetos, veremos que algumas classes presentes no Java nos oferecem diversas funcionalidades que facilitarão muito nossa vida, tornando coisas como a conversão de um objeto para um tipo primitivo possíveis! Claro, tudo isso será visto com mais detalhes futuramente e ficará claro que por baixo dos panos as coisas funcionam de maneira bem mais interessante.

Mas voltando ao assunto, só dando um spoiler de como essa conversão vai funcionar. Temos um texto do tipo String e queremos transformar ele em um double, e usamos o Double.parseDouble() para fazer essa conversão:

    String texto = "3.14";
    double valor = Double.parseDouble(texto);

Mas perceba que para que essa conversão funcione, precisamos que dentro de String texto tenha um valor com formato válido para que ele possa ser guardado dentro de um double. No nosso caso, precisamos que o texto tenha um número escrito nele(3.14 no exemplo), já que converter um nome, como "Andre", em um double é impossível pois o double só é capaz de armazenar números dentro dele.

Espero ter ajudado, qualquer dúvida é só avisar!

Bons estudos!!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software