I nästan alla Java-program hittar du primitiva datatyper som används. De ger ett sätt att lagra de enkla värdena som programmet har att göra med. Tänk till exempel på ett kalkylprogram som låter användaren utföra matematiska beräkningar. För att programmet ska uppnå sitt mål måste det kunna lagra värdena som användaren anger. Detta kan göras med variabler. En variabel är en behållare för en specifik typ av värde som kallas a data typ.
Primitiva datatyper
Java kommer med åtta primitiva datatyper för att hantera enkla datavärden. De kan delas upp i fyra kategorier efter den typ av värde de har:
- heltal: dessa är positiva och negativa heltal.
- Flytande nummer: valfritt antal som har en bråkdel.
- Tecken: en enda karaktär.
- Sanningsvärden: antingen sant eller falskt.
heltal
Heltal har nummervärden som inte kan ha en bråkdel. Det finns fyra olika typer:
- byte: använder en byte för att lagra värden från -128 till 127
- kort: använder två byte för att lagra värden från -32,768 till 32,767
- int: använder fyra byte för att lagra värden från -2,147,483,648 till 2,147,483,647
- lång: använder åtta byte för att lagra värden från -9,223,372,036,854,775,808 till 9,223,372,036,854,775,807
Som du ser ovanifrån är den enda skillnaden mellan typerna värdet som de kan hålla. Deras intervall korrelerar direkt med den mängd utrymme datatypen behöver för att lagra dess värden.
I de flesta fall när du vill representera ett helt nummer använder du int datatyp. Dess förmåga att hålla siffror från knappt -2 miljarder till drygt 2 miljarder passar de flesta heltal. Men om du av någon anledning behöver skriva ett program som använder så lite minne som möjligt kan du överväga de värden du behöver för att se och se om byte eller kort är ett bättre val. På samma sätt, om du vet att siffrorna du behöver lagra är högre än 2 miljarder, använd den långa datatypen.
Flytande nummer
Till skillnad från heltal, flytande punktnummer som bråkdelar. Det finns två olika typer:
- flyta: använder fyra byte för att lagra värden från -3.4028235E + 38 till 3.4028235E + 38
- dubbel: använder åtta byte för att lagra värden från -1.7976931348623157E + 308 till 1.7976931348623157E + 308
Skillnaden mellan de två är helt enkelt intervallet med bråknummer de kan hålla. Liksom heltal korrelerar intervallet direkt med den mängd utrymme de behöver för att lagra numret. Om du inte har minnesproblem är det bäst att använda den dubbla datatypen i dina program. Den kommer att hantera fraktionstal till den precision som behövs i de flesta applikationer. Det huvudsakliga undantaget är i finansiell programvara där avrundningsfel inte kan tolereras.
Tecken
Det finns bara en primitiv datatyp som handlar om enskilda tecken - röding. Charen kan hålla värdet på ett tecken och är baserat på 16-bitars Unicode-kodning. Tecknet kan vara en bokstav, siffra, skiljetecken, en symbol eller ett kontrolltecken (t.ex. ett teckenvärde som representerar en ny linje eller en flik).
Sanningsvärden
Som Java-program hantera i logik måste det finnas ett sätt att avgöra när ett villkor är sant och när det är falskt. De boolean datatyp kan innehålla dessa två värden; det kan bara vara sant eller falskt.