Вы находитесь на странице: 1из 7

LINGUAGEM DE PROGRAMAO II

Professor: Pedro Henrique (pedroholi@gmail.com)

Linguagem de Programao II - Pedro Henrique de Oliveira e Silva

Fundamentos da Linguagem Java


Converso entre Tipos de Dados
Ao trabalhar com expresses, salvo quando todos os operando so do
mesmo tipo, inevitvel ter que considerar converses entre um tipo de dado e outro. H basicamente dois tipos de converses de dados. O primeiro se refere a converso implicita na qual, os dados so convertidos automaticamente, praticamente sem a preocupao do programador. Isto ocorre no caso de converso de dados de tipo inteiro para real e de nmeros para strings. Por exemplo: double x; int i = 20; x = i;
Linguagem de Programao II - Pedro Henrique de Oliveira e Silva

Fundamentos da Linguagem Java


Converso entre Tipos de Dados
As regras de converso implcita empregadas pela linguagem Java so as
seguintes: Os operadores unrios ++ e -- convertem um tipo byte e short so convertidos para um int, e os demais tipos no so afetados Para os operadores binrios, as regras so um pouco mais complicadas. Para operaes envolvendo apenas inteiros, se um dos operandos for long, o outro ser convertido para um long antes de realizar a operao, a qual resultar num long. Caso contrrio, ambos os operandos so convertidos para um int e o resultado ser tambm um int, a menos que o resultado da operao seja grande demais para caber num int. Nesse caso, o resultado ser convertido para um long.

Linguagem de Programao II - Pedro Henrique de Oliveira e Silva

Fundamentos da Linguagem Java


Converso entre Tipos de Dados
Para operaes envolvendo nmeros de ponto flutuante, se um dos operadores for double, o outro ser convertido para double antes de realizar a operao e o resultado ser um double. Do contrrio, ambos os operando so convertidos para float, e o resultado ser um float. Algumas vezes, porm, as converses implcitas no so suficientes para garantir um resultado esperado em uma expresso. Nesses casos, importante podermos controlar precisamente a ocorrncia de uma converso de tipo. Isto pode ser feito por meio de um operador unrio de converso (Typecast). Por exemplo: float eventos = 25.7; float dias = 7.2; x = (int)(eventos / dias);
Linguagem de Programao II - Pedro Henrique de Oliveira e Silva

Fundamentos da Linguagem Java


Converso entre Tipos de Dados
Typecasting uma tcnica utilizada para simples converso de tipo de dado, ou seja, ele no converte um tipo de dado, mas sim, faz com que ele se parea com outro tipo de dado. A tcnica de typecasting importante porque muitas vezes temos que retornar valores de tipos diferentes ou, de forma vulgar, traduzir certos tipos de dados genricos.

Linguagem de Programao II - Pedro Henrique de Oliveira e Silva

Fundamentos da Linguagem Java


Converso de strings para int, double ou float
Em java, a converso de strings para tipos de dados numricos pode ser feita com recurso aos objetos Integer, Double e Float. Estes objetos por sua vez podem ser convertidos nos tipos de dados bsicos como por exemplo : String numero = "2008"; //String para int int i = Integer.parseInt(numero); //String para double double j = Double.parseDouble(numero); //String para float float k = Float.parseFloat(numero);

Linguagem de Programao II - Pedro Henrique de Oliveira e Silva

Вам также может понравиться