Sei que podemos fazer parsing, transformando uma String num int por exemplo, mas isso não teria que ser feito com o método parseInt() ?
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Sei que podemos fazer parsing, transformando uma String num int por exemplo, mas isso não teria que ser feito com o método parseInt() ?
Não sei se entendi corretamente sua dúvida, mas o parseInt() transforma String em int da seguinte forma:
String num = "12";
int x = Integer.parseInt(num);Sempre me confundo. Mas, para transformar int em String, nós usamos o código abaixo:
int num = 10;
String expressao = Integer.toString(num);Acho que com double também funciona:
double num = 10.0
String expressao = Double.toString(num);
Então, Maurício, a minha duvida foi em relação à construção desse tipo:
Integer idade= Integer. valueOf ("10");
Note que no construtor deveria ter um int e não uma String.
Mas eu escrevendo a mesma construção na IDE deu certo mesmo. Todavia, parece que não é o indicado, né?
Integer.parseInt() retorna um int (tipo primitivo) enquanto que Integer.valueOf() retorna um Integer (objeto wrapper imutável que "envolve" o tipo primitivo). A escolha vai depender do tipo de dado que você necessita (provavelmente na maioria dos casos vai ser Integer.parseInt()), lembrando que em operações repetitivas o boxing/unboxing (conversão de int para Integer e vice-versa) pode consumir um certo processamento.