Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Et viktig poeng er at når en vet typen til verdiene/objektene som inngår i et uttrykk (såkalte deluttrykk), så vet en også noe om typen til resultatet. F.eks. vet en at 1 + 2 gir en int fordi int + int generelt en ny int. Dermed vet en også at (1 + 2) + 3 er lov og gir en ny int. Ved å jobbe seg innenfra og ut i et uttrykk, så en dermed finne typen til uttrykket som helhet. F.eks. vil (1 + 2) + "3" gi en String, fordi (1 + 2) gir en int og int + String gir en (ny) String. Dermed er også ((1 + 2) + "3").length() lov, fordi String.length() er lov.

Konvertering av tall

Når en blander talltyper, f.eks. int og double, så har Java regelen at da omgjøres tallene først til samme type, før operasjonen utføres. Og typen som velges er slik at en ikke mister sifre eller desimaler. Ved beregning av 1 + 2.0, altså int + double, så blir int-verdien 1 først omgjort til double-verdien 1.0 før de legges sammen. Hvis en i stedet hadde gjort om double-verdien til int, så kunne en potensielt mistet desimaler og det hadde ikke vært bra.

...