O que é conversão de tipo em Java? [Com exemplos]
Publicados: 2021-12-23Se você está começando com sua jornada de programação Java, um dos principais conceitos para se apossar é a conversão de tipo ou conversão de tipo. Se você deseja dominar a programação Java ou deseja iniciar uma carreira em desenvolvimento de software, os conceitos de typecasting sempre serão úteis para você.
A conversão de tipo é simplesmente o processo de conversão de dados de um tipo de dados em outro. Esse processo é conhecido como conversão de tipo, typecasting ou mesmo coerção de tipo. A linguagem de programação Java permite que os programadores convertam tipos de dados primitivos e de referência. Ao realizar a conversão de tipo, o valor dos dados permanece o mesmo, apenas que seu tipo mudou. Uma coisa a notar é que não é possível realizar typecasting ou conversão de tipo em variáveis de tipo de dados booleanos.
Java oferece vários tipos de conversões de tipo para programadores. Vejamos algumas das conversões de tipos mais úteis!
Aprenda cursos de desenvolvimento de software das melhores universidades do mundo. Ganhe Programas PG Executivos, Programas de Certificado Avançado ou Programas de Mestrado para acelerar sua carreira.
Índice
Conversão de tipo primitivo em Java
Tipos de dados primitivos são simplesmente os tipos de dados definidos pela linguagem de programação para os desenvolvedores usarem. Java oferece sete tipos de dados primitivos diferentes, como:
- boleano
- Byte
- Caracteres
- Curto
- Int
- Grandes
- Flutuador
- Dobro
Por padrão, sempre que você atribui valores a qualquer variável na programação Java, você executa a conversão de tipo primitivo, pois atribui o valor de um tipo a outro tipo.
Conversão de tipo implícita em Java
Além da conversão de tipo primitivo feita por padrão, há mais duas conversões de tipo em Java – implícita e explícita.
A conversão implícita de tipo, também conhecida como conversão de ampliação, trata da conversão de um tipo de dados com valores mais baixos para um tipo de dados com valores mais altos sem incorrer em perda de dados. Aqui está um exemplo de conversão de tipo implícita em Java:
classe pública Conv{
public static void main(String[] args)
{
int = 1500;
//conversão automática de tipo
longo l = i;
//conversão automática de tipo
flutuar f = l;
System.out.println(“Int“+i);
System.out.println(“Long“+l);
System.out.println(“Float“+f);
}
}
Saída:
Valor int 15.000
Valor longo 15000
Valor flutuante 15.000,0
Em todas as três instruções acima, ocorre a conversão implícita de tipo e o valor de um tipo de dados 'longo' é convertido como int e float.
A conversão implícita de tipo em Java ocorre quando principalmente essas duas condições são atendidas:
- Os dois tipos de dados devem ser compatíveis entre si. Por exemplo, os tipos de dados numéricos são compatíveis com outros tipos de dados numéricos, mas não com os tipos string ou booleanos. Da mesma forma, o tipo de dados string não é compatível com um tipo de dados booleano.
- O valor de destino que precisa ser convertido em tipo deve ter um comprimento menor. Por exemplo, 4 bytes de dados podem ser convertidos em um tipo de dados de 8 bytes.
A ordem dos tipos de dados em que a conversão de tipo implícita em Java acontece é a seguinte:
Byte > Short > Char > Int > Long > Float > Double
Conversão de tipo explícita em Java
A conversão de tipo explícito é o oposto da conversão de tipo implícito. Portanto, em vez de ampliar, essa conversão de tipo funciona no sentido de estreitar. O desenvolvedor atribui o valor de um tipo de dados mais alto a um relativamente mais baixo. Como estamos lançando dados de um tipo de dados mais amplo para um tipo de dados mais restrito, há chances de perda de dados, portanto, execuções cuidadosas precisam ser realizadas ao realizar a conversão de tipo explícita em Java.
Enquanto a conversão de tipo implícita em Java pode ser feita automaticamente pelo compilador, o desenvolvedor faz a conversão de tipo explícita. Aqui está um exemplo de conversão explícita de tipo em Java:
classe pública Estreito
{
public static void main(String[] args)
{
duplo d = 1500,06;
//conversão de tipo explícito
longo l = (longo)d;
//conversão de tipo explícito
int i = (int)l;
System.out.println(“Valor duplo “+d);
//parte fracionária perdida
System.out.println(“Valor longo “+l);
//parte fracionária perdida
System.out.println("Valor Int "+i);
}
}
Saída:
Valor do tipo de dados duplos 1500,06
Valor do tipo de dados longo 1500
Valor do tipo de dados Int 1500
A conversão de tipo explícito em Java funciona na seguinte ordem de conversão:
Double > Float > Long > Int > Char > Short > Byte
Para concluir
Isso é praticamente todo o básico que você precisa saber quando se trata de conversão de tipo em Java. Daqui em diante, quanto mais você praticar, melhor compreenderá esses conceitos. Tenha em mente que estruturas de dados (e algoritmos, mesmo) é um dos aspectos mais essenciais da Ciência da Computação e, portanto, é igualmente vital para o desenvolvimento de software. Seja qual for a pilha de tecnologia em que você trabalha, você estará trabalhando com dados e estruturas de dados. Se você estiver trabalhando em um projeto complexo, provavelmente estará lidando com vários tipos de dados e estruturas de dados para chegar ao seu destino. Em todos esses casos, e em geral também, os conceitos de conversão de tipos o ajudarão a se manter à tona sem nenhuma dificuldade.
Portanto, você deve começar a praticar e brincar com diferentes tipos de dados, tentar implementar conversões de tipo explícitas em Java, encontrar alguns erros e sair com dificuldade! Essa é a única maneira de dominar uma linguagem de programação. Na upGrad, acreditamos no valor da prática e orientação pessoal, que se reflete em nossos cursos e pedagogia do ensino. Se você é um aspirante a desenvolvedor de software que deseja trabalhar em desenvolvimento full-stack, nosso Programa PG Executivo em Desenvolvimento de Software – Especialização em Desenvolvimento Full Stack é projetado apenas para você. Ele foi desenvolvido para ajudar os alunos a começar do zero, entender os conceitos mais complexos e dominá-los. Confira nosso currículo e inscreva-se em breve!
A conversão de tipo em Java sempre deve ser realizada pelo programador?
A conversão de tipo explícita precisa ser feita pelo programador. No entanto, a conversão de tipo implícita é feita pelo próprio compilador.
Quando a conversão de tipo é necessária em Java?
Programadores e desenvolvedores de software precisam verificar regularmente a compatibilidade dos diferentes tipos de dados com os quais estão trabalhando. Em todos esses cenários, a conversão de tipo ajuda os programadores a moldar os tipos de dados de acordo com os requisitos de seu programa.
Qual conversão de tipo é executada automaticamente em Java?
A conversão implícita de tipo em Java é executada automaticamente.