Lecture overview -- Keyboard shortcut: 'u'  Previous page: Datatyper i Java [Section] -- Keyboard shortcut: 'p'  Next page: Primitive Datatyper i Java: boolean og tegn -- Keyboard shortcut: 'n'  Lecture notes - all slides and notes together  slide -- Keyboard shortcut: 't'  Help page about these notes  Alphabetic index  Course home  Play sound for this page -- Keyboard shortcut: 'y'  Page 2 : 39
Forelæsningsnoter i Objekt-orienteret Programmering
De ikke objekt-orienterede dele af Java
Primitive Datatyper i Java: taltyper

Vi starter med at studere de datatyper, som kan bruges umiddelbart i ethvert Java program. Vi kalder dem primitive i modsætning til typer baseret på klasser, som vi er meget optaget af i forbindelse med objekt-orienteret programmering

De primitive data er ikke-muterbare værdier i modsætning til objekter

  • Heltal

    • byte   8 bits

    • short   16 bits

    • int   32 bits

    • long   64 bits

Det er værd at bemærke at alle heltal og reelle tal har en fast størrelse på tværs af platformene, hvor Java er implementeret. Eksempelvis er int typen 32 bits heltal både på Unix og Mac.

Heltal af typen long noteres med et efterstillet 'L'. Eksempelvis er 123L altså tallet 123 som en long. Hvis det efterstillede 'L' ikke forekommer er der tale om en værdi i int.

Java tillader os at notere heltal i basis 8 (oktal), 10 (decimal) og 16 (hexadecimal). Et foranstillet '0' angiver oktal basis, og et foranstillet '0X' angiver hexademinal basis. Eksempelvis er tallet 011 altså lig med 9 (decimalt), og tallet 0X11 er lig med 17 (decimalt). Oktal og hexadecimal notation er praktisk hvis man arbejder direkte med bit, idet et oktalt eller hexadecimalt tal direkte kan transformeres til binær repræsentation ved ciffervis konvertering. (Dette er meget mere besværligt at konvertere et decimalt tal til binær repræsentation).

Man kan observere, at Java understøtter regning med heltal af vilkårlig stor præcision via klassen BigInteger - jf. referencen fra denne side.

  • Reelle tal

    • float   32 bits

    • double   64 bits

Typerne double og float har samme leksikalske syntaks. Som eksempler kan nævnes

    7.51 5. .5 3.14 1e-19 2e97

Hvis ikke andet angives er tallet en double (default). Hvis man ønsker at notere et tal af typen float skal man afslutte tallet med et f. Så følgende er eksempler på værdier i typen float:

    7.51f 5.f .5f 3.14f 1e-19f 2e97f

Symmetrisk kan man også angive et d tilsidst - d for double. Men det er altså ikke nødvendigt

 

/user/normark/courses/prog1/prog1-01/sources/java/noteEksempler/TalEksempel.javaEt Java program som erklærer to int, tre long og en float variabel.

Et Java program som erklærer to int, tre long og en float variabel. Programmet udskriver tallene 10, 18, 9, 17, 2748 og 3100.0