Type Casting
Stryg for at vise menuen
I Java har hver værdi en specifik type, og nogle gange skal vi konvertere en værdi fra én type til en anden. Dette kaldes type casting.
Der findes to typer casting:
- Implicit casting;
- Eksplicit casting.
Implicit casting
Implicit casting sker, når Java automatisk konverterer en mindre type til en større type. Dette er sikkert, fordi der ikke går data tabt:
int lattePrice = 5;
double priceDecimal = lattePrice; // becomes 5.0
Dette fungerer, fordi en større type som double nemt kan indeholde alt, hvad en mindre type som int kan.
Eksplicit casting
Eksplicit casting sker, når en større type manuelt konverteres til en mindre type. Dette er nødvendigt, fordi data kan gå tabt under konverteringen:
double lattePrice = 4.99;
int roundedPrice = (int) lattePrice; // becomes 4
Java fjerner decimaldelen og gemmer kun 4. I modsætning til implicit casting skal dette skrives manuelt ved at bruge (type).
En nem måde at huske det på:
- lille → stor = automatisk;
- stor → lille = manuel.
Eksempel
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 } }
Eksemplet kaster først implicit int til double — Java gør dette automatisk, og resultatet bliver 5.0. Derefter kaster vi eksplicit double til int ved at bruge (int), hvilket fjerner decimalen og udskriver 4.
Tak for dine kommentarer!
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat
Type Casting
I Java har hver værdi en specifik type, og nogle gange skal vi konvertere en værdi fra én type til en anden. Dette kaldes type casting.
Der findes to typer casting:
- Implicit casting;
- Eksplicit casting.
Implicit casting
Implicit casting sker, når Java automatisk konverterer en mindre type til en større type. Dette er sikkert, fordi der ikke går data tabt:
int lattePrice = 5;
double priceDecimal = lattePrice; // becomes 5.0
Dette fungerer, fordi en større type som double nemt kan indeholde alt, hvad en mindre type som int kan.
Eksplicit casting
Eksplicit casting sker, når en større type manuelt konverteres til en mindre type. Dette er nødvendigt, fordi data kan gå tabt under konverteringen:
double lattePrice = 4.99;
int roundedPrice = (int) lattePrice; // becomes 4
Java fjerner decimaldelen og gemmer kun 4. I modsætning til implicit casting skal dette skrives manuelt ved at bruge (type).
En nem måde at huske det på:
- lille → stor = automatisk;
- stor → lille = manuel.
Eksempel
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 } }
Eksemplet kaster først implicit int til double — Java gør dette automatisk, og resultatet bliver 5.0. Derefter kaster vi eksplicit double til int ved at bruge (int), hvilket fjerner decimalen og udskriver 4.
Tak for dine kommentarer!