Che cos'è la conversione del tipo in Java? [Con esempi]

Pubblicato: 2021-12-23

Se stai iniziando con il tuo viaggio di programmazione Java, uno dei concetti primari da conoscere è il casting dei tipi o la conversione dei tipi. Sia che tu stia cercando di padroneggiare la programmazione Java o di iniziare una carriera nello sviluppo di software, i concetti di typecasting ti saranno sempre utili.

La conversione del tipo è semplicemente il processo di conversione dei dati di un tipo di dati in un altro. Questo processo è noto come conversione del tipo, typecasting o persino coercizione del tipo. Il linguaggio di programmazione Java consente ai programmatori di convertire sia i tipi di dati primitivi che quelli di riferimento. Eseguendo la conversione del tipo, il valore dei dati rimane lo stesso, solo che il tipo è cambiato. Una cosa da notare è che non è possibile eseguire il typecasting o la conversione del tipo su variabili di tipo di dati booleane.

Java offre vari tipi di conversioni di tipo per i programmatori. Diamo un'occhiata ad alcuni dei tipi più utili di conversioni!

Impara i corsi di sviluppo software dalle migliori università del mondo. Guadagna programmi Executive PG, programmi di certificazione avanzati o programmi di master per accelerare la tua carriera.

Sommario

Conversione del tipo primitivo in Java

I tipi di dati primitivi sono semplicemente i tipi di dati definiti dal linguaggio di programmazione che gli sviluppatori possono utilizzare. Java offre sette diversi tipi di dati primitivi come:

  • booleano
  • Byte
  • Char
  • Corto
  • int
  • Lungo
  • Galleggiante
  • Doppio

Per impostazione predefinita, ogni volta che si assegnano valori a qualsiasi variabile nella programmazione Java, si esegue la conversione del tipo primitivo poiché si assegna il valore di un tipo a un altro tipo.

Conversione implicita del tipo in Java

Oltre al cast del tipo primitivo eseguito per impostazione predefinita, ci sono altre due conversioni di tipo in Java: implicita ed esplicita.

La conversione implicita del tipo, nota anche come casting allargato, consiste nel trasmettere un tipo di dati con valori inferiori a un tipo di dati con valori più alti senza incorrere in alcuna perdita di dati. Ecco un esempio di conversione di tipo implicita in Java:

classe pubblica Conv{

public static void main(String[] args)

{

int i = 1500;

//conversione automatica del tipo

lungo l = io;

//conversione automatica del tipo

galleggiante f = l;

System.out.println("Int"+i);

System.out.println("Long"+l);

System.out.println("Float"+f);

}

}

Produzione:

Valore int. 15000

Valore lungo 15000

Valore mobile 15000.0

In tutte e tre le istruzioni precedenti, si verifica il cast del tipo implicito e il valore di un tipo di dati "long" viene cast come int e float.

La conversione implicita del tipo in Java avviene quando vengono soddisfatte principalmente queste due condizioni:

  • I due tipi di dati dovrebbero essere compatibili tra loro. Ad esempio, i tipi di dati numerici sono compatibili con altri tipi di dati numerici ma non con i tipi stringa o booleani. Allo stesso modo, il tipo di dati stringa non è compatibile con un tipo di dati booleano.
  • Il valore di destinazione che deve essere convertito in tipo deve avere una lunghezza inferiore. Ad esempio, è possibile eseguire il cast di 4 byte di dati in un tipo di dati di 8 byte.

L'ordine dei tipi di dati in cui avviene la conversione dei tipi impliciti in Java è il seguente:

Byte > Short > Char > Int > Long > Float > Double

Conversione esplicita del tipo in Java

La conversione esplicita del tipo è l'opposto della conversione implicita del tipo. Quindi, invece di ampliare, questo tipo di conversione funziona verso il restringimento. Lo sviluppatore assegna il valore di un tipo di dati superiore a uno relativamente inferiore. Poiché stiamo trasmettendo dati da un tipo di dati più ampio a un tipo di dati più ristretto, ci sono possibilità di perdita di dati, quindi è necessario eseguire esecuzioni attente mentre si esegue la conversione esplicita del tipo in Java.

Mentre la conversione del tipo implicito in Java può essere eseguita automaticamente dal compilatore, lo sviluppatore esegue la conversione del tipo esplicito. Ecco un esempio di cast di tipi espliciti in Java:

classe pubblica Stretto

{

public static void main(String[] args)

{

doppia d = 1500,06;

//conversione esplicita del tipo

lungo l = (lungo)d;

//conversione esplicita del tipo

int i = (int)l;

System.out.println(“Doppio valore “+d);

//parte frazionaria persa

System.out.println(“Valore lungo “+l);

//parte frazionaria persa

System.out.println(“Int value “+i);

}

}

Produzione:

Valore del tipo di dati doppio 1500.06

Valore del tipo di dati lungo 1500

Int Valore del tipo di dati 1500

La conversione esplicita del tipo in Java funziona nel seguente ordine di conversione:

Double > Float > Long > Int > Char > Short > Byte

In conclusione

Queste sono praticamente tutte le nozioni di base che devi sapere quando si tratta di convertire i tipi in Java. Da qui in poi, più ti eserciti, migliore sarà la comprensione di questi concetti. Tieni presente che le strutture dati (e anche gli algoritmi) sono uno degli aspetti più essenziali dell'informatica, e quindi è ugualmente vitale anche per lo sviluppo del software. Qualunque sia lo stack tecnologico su cui lavori, lavorerai con dati e strutture di dati. Se stai lavorando a un progetto complesso, molto probabilmente avrai a che fare con più tipi di dati e strutture di dati per arrivare a destinazione. In tutti questi casi, e anche in generale, i concetti di conversione del tipo ti aiuteranno a rimanere a galla senza alcuna difficoltà.

Quindi, dovresti iniziare a esercitarti e giocare con diversi tipi di dati, provare a implementare conversioni di tipi espliciti in Java, riscontrare alcuni errori e tentare di uscirne! Questo è l'unico modo per padroneggiare un linguaggio di programmazione. In upGrad, crediamo nel valore della pratica e della guida personale, che si riflette nei nostri corsi e nella pedagogia dell'insegnamento. Se sei un aspirante sviluppatore di software che cerca di lavorare nello sviluppo full-stack, il nostro programma Executive PG in Software Development - Specializzazione in Full Stack Development è progettato solo per te. È costruito per aiutare gli studenti a iniziare da zero, comprendere i concetti più complessi e padroneggiarli. Dai un'occhiata al nostro curriculum e registrati presto!

La conversione del tipo in Java deve sempre essere eseguita dal programmatore?

La conversione esplicita del tipo deve essere eseguita dal programmatore. Tuttavia, la conversione implicita del tipo viene eseguita dal compilatore stesso.

Quando è richiesta la conversione del tipo in Java?

I programmatori e gli sviluppatori di software devono controllare regolarmente la compatibilità dei diversi tipi di dati con cui stanno lavorando. In tutti questi scenari, la conversione del tipo aiuta i programmatori a modellare i tipi di dati secondo i requisiti del loro programma.

Quale tipo di conversione viene eseguita automaticamente in Java?

La conversione implicita del tipo in Java viene eseguita automaticamente.