Conversione di tipo
Scorri per mostrare il menu
In Java, ogni valore ha un tipo specifico e a volte è necessario convertire un valore da un tipo a un altro. Questo processo si chiama type casting.
Esistono due tipi di casting:
- Casting implicito;
- Casting esplicito.
Casting implicito
Il casting implicito avviene quando Java converte automaticamente un tipo più piccolo in uno più grande. Questo è sicuro perché non si perde alcun dato:
int lattePrice = 5;
double priceDecimal = lattePrice; // becomes 5.0
Questo funziona perché un tipo più grande come double può facilmente contenere tutto ciò che un tipo più piccolo come int può rappresentare.
Casting esplicito
Il casting esplicito avviene quando un tipo più grande viene convertito manualmente in uno più piccolo. Questo è necessario perché durante la conversione si potrebbero perdere dei dati:
double lattePrice = 4.99;
int roundedPrice = (int) lattePrice; // becomes 4
Java rimuove la parte decimale e memorizza solo 4. A differenza del casting implicito, questo deve essere scritto manualmente usando (type).
Un modo semplice per ricordare:
- piccolo → grande = automatico;
- grande → piccolo = manuale.
Esempio
Main.java
1234567891011121314151617package com.example; public class Main { public static void main(String[] args) { int lattePrice = 5; // implicit casting double priceDecimal = lattePrice; System.out.println(priceDecimal); // 5.0 // explicit casting double realPrice = 4.99; int roundedPrice = (int) realPrice; System.out.println(roundedPrice); // 4 } }
Nell'esempio, prima viene effettuato un cast implicito da int a double — Java lo esegue automaticamente e il risultato diventa 5.0. Successivamente, effettuiamo esplicitamente il cast da double a int utilizzando (int), che elimina la parte decimale e stampa 4.
Grazie per i tuoi commenti!
Chieda ad AI
Chieda ad AI
Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione