Ved programmering er det påkrævet at gemme data. Dataene gemmes i hukommelsen. Hukommelsesplaceringer, der gemmer data kaldes variabler. Hver hukommelsesplacering kan gemme en bestemt datatype. Hukommelsesstørrelse for hver datatype er forskellig. I programmeringssprog som Python behøver programmereren ikke at erklære variabeltypen. I programmeringssprog som Java skal programmereren erklære variabeltypen. Der er et antal datatyper som char, int, float og double. Char-datatypen bruges til at gemme en enkelt tegnværdi. Int-datatypen bruges til at gemme numeriske værdier uden decimaler. Float- og dobbeltdatatyperne bruges til at gemme numeriske værdier med decimaler. Denne artikel diskuterer forskellen mellem float og double. Det vigtigste forskel mellem float og double er det float er en enkelt præcisions 32 bit IEEE 754 flydepunkt datatype, mens dobbelt er en dobbelt præcision 64 bit IEEE 754 flydepunkt datatype.
1. Oversigt og nøgleforskel
2. Hvad er float
3. Hvad er dobbelt
4. Ligheder mellem float og dobbelt
5. Sammenligning side ved side - float vs dobbelt i tabelform
6. Resume
Float er et enkelt præcision 32-bit flydende punkt. Det er en foruddefineret datatype understøttet af programmeringssprog som Java. For at erklære en flydende variabel bruges nøgleordet 'float'. Så det kan ikke bruges til identifikationsnavne såsom metodenavne og variabelnavne. Se nedenstående program.
Figur 01: Java-program med float-datatype
I henhold til ovenstående program er antallet en variabel, der kan gemme et flydende punktnummer. Her bruges -20.5f i stedet for -20.5. -20,5 er en dobbelt bogstavelig. For at indikere kompilatoren til at gemme værdien som en flyder, skal programmereren skrive f eller F.
Den dobbelte er et dobbelt præcision 64-bit flydende punkt. Det er en foruddefineret datatype. For at erklære en dobbeltvariabel bruges nøgleordet 'dobbelt'. Derfor kan det ikke bruges til identifikationsnavne såsom metodenavne og variabelnavne. Se nedenstående program.
Figur 02: Java-program med dobbelt datatype
I henhold til ovenstående program er antallet en variabel af typen dobbelt. Udskrivning af nummeret giver output -20,5. Det tager 64 bit i hukommelsen for at gemme værdien. Hvis programmereren er skrevet -20,5, betragtes det som en dobbelt. Han kan også skrive det som -20.5d. At skrive 'd' er valgfrit.
Type-casting kan udføres på datatyper. Det er processen med at konvertere en datatype til en anden datatype. Når der tildeles en mindre datatype til en større datatype, kræves der ikke casting. Udvidelsen sker i en byte, kort, int, lang, flydende, dobbelt rækkefølge. Når der tildeles en større datatype til en lille datatype, er det nødvendigt at foretage casting.
Figur 03: Støbning
I henhold til ovenstående program har num1 og num2 floatdatatyper. Summationen tildeles den variable sum. Det er en flyder. Da float er en mindre datatype, der sammenligner med dobbelt, kan den tildeles direkte til dobbeltvariablenummeret uden en casting af typen.
X og y kan gemme dobbelt datatyper. Summationen er tildelt variablen z. Det kan også opbevares dobbelt. Type casting er påkrævet for at tildele en større datatype til en mindre datatype. For at gemme dobbeltværdien i en floatvariabel er det derfor nødvendigt at udføre type casting, fordi dobbelt er en større datatype end float.
float vs dobbelt | |
Float er en enkelt præcisions 32 bit IEEE 754 flydepunkt datatype. | Den dobbelte er en dobbelt præcision 64 bit IEEE 754 flydepunkt datatype. |
Antal byte | |
Flyderen er 4 byte lang. | Den dobbelte er 8 byte lang. |
Standardværdier | |
Standardværdien for float er 0,0f. | Standardværdien for dobbelt er 0,0d. |
Søgeord | |
Nøgleordet 'float' bruges til at erklære en flydende værdi. | Nøgleordet 'dobbelt' bruges til at erklære en dobbeltværdi. |
Krævet hukommelse | |
Float kræver mindre hukommelse end dobbelt. | Den dobbelte kræver mere hukommelse end float. |
Ved programmering er det nødvendigt at gemme data. Disse data gemmes i hukommelsesplaceringer og kaldes variabler. Hver variabel gemmer data af specifik type. Der er datatyper som int, char, double og float osv. Denne artikel diskuterede forskellen mellem to datatyper, der er en float og double. Forskellen mellem float og dobbelt er, at float er en datatype, som er en enkelt præcision 32 bit IEEE 754 flydende punkt, mens dobbelt er en datatype, som er et dobbelt præcision 64 bit IEEE 754 flydende punkt.
1. Java-variabler og (primitive) datatyper. Tilgængelig her
2.Point, selvstudier. “Java Basic Datatypes.”, Tutorials Point, 8. januar 2018. Findes her