Nyckelskillnad – heltal vs flytande
Float och Double är andra omslagsklasser som används för att konvertera primitiva datatyper. Ibland krävs det att man konverterar den primitiva datatypen till ett objekt och att man konverterar objektet till den primitiva datatypen. För det kan Wrapper-klasser användas. Programmeringsspråk som Java innehåller Wrapper-klasser. De används för denna konverteringsprocess. En omslagsklass är en klass som kapslar in typer. Dessa typer kan användas för att skapa objektinstanser och metoder i en annan klass som behöver dessa typer. Det finns åtta primitiva typer i Java. De är int, short, byte, long, boolean, char, float och double. Motsvarande omslagsklass för den booleska datatypen är boolesk. Omslagsklassen för char-datatypen är ett tecken. Short, Byte, Integer, Long, Float och Double är andra omslagsklasser. Att automatiskt konvertera den primitiva datatypen till ett objekt kallas autoboxning. Att automatiskt konvertera objektet till en primitiv typ kallas unboxing. Den här artikeln diskuterar två omslagsklasser som är heltal och flytande. Den viktigaste skillnaden mellan Integer och Float är att Integer är omslagsklassen relaterad till int primitiv datatyp medan Float är wrapperklassen relaterad till flytande primitiv datatyp.
Vad är heltal?
Integer är en omslagsklass i Java. Motsvarande datatyp är int. Den används för att konvertera en int-datatyp till ett objekt eller för att konvertera ett objekt till en int. Se exemplet nedan med heltalsomslagsklass.
Figur 01: Program med heltalsomslagsklass
Enligt programmet ovan är x:et en variabel av typen int. Den innehåller värdet 10. Integer.valueOf används för att konvertera objektet int till heltalstyp. Variabeln x skickas till metodens värde. På samma sätt konverteras int till ett heltal.
Y är ett objekt av typen heltal. Värde 5 skickas till konstruktören. Med intValue-metoden konverteras objektet till int-datatyp. Det konverterade värdet lagras i z-variabel som kan innehålla en int.
Figur 02: Autoboxning och Unboxing Exempel1
Enligt programmet ovan har variabeln x en int. När du tilldelar det till Integer, skriver kompilatorn automatiskt Integer.valueOf(x) internt. Det är autoboxning. "a" är av typen heltal. Värdet 6 skickas till konstruktorn. När du tilldelar värdet a till b, skriver kompilatorn automatiskt a.intValue() internt. Det är unboxing.
Vad är Float?
Float är en omslagsklass i Java. Motsvarande datatyp är en float. Den används för att konvertera en flytdatatyp till ett objekt eller för att konvertera ett objekt till ett flytande. Se exemplet nedan med Float wrapper-klass.
Figur 03: Program med Float Wrapper Class
Enligt programmet ovan är x:et en variabel av typen float. Den innehåller värdet 20,5f. Float.valueOf används för att konvertera float till Float-objekt. Variabeln x skickas till metoden valueOf. På samma sätt omvandlas flöten till en flöte.
Y är ett objekt av typen Float. Värdet 10.5f skickas till konstruktören. Med floatValue-metoden konverteras det objektet till flytande datatyp. Det konverterade värdet lagras i z-variabel som kan hålla ett flytande värde.
Figur 04: Autoboxning och Unboxing Exempel2
Enligt ovanstående program har variabeln x en float. När den tilldelar den till Float, skriver kompilatorn automatiskt Float.valueOf(x) internt. Det är autoboxning. "a" är av typen Float. Värdet 6.1f skickas till konstruktorn. När du tilldelar värdet a till b, skriver kompilatorn automatiskt a.floatValue() internt. Det är unboxing.
Vad är likheten mellan heltal och flytande?
Både heltal och flytande är omslagsklasser i Java
Vad är skillnaden mellan heltal och flytande?
Integer vs Float |
|
Integer är en klass som lindar ett värde av den primitiva typen int i ett objekt. | Float är en klass som lindar ett värde av den primitiva typen float i ett objekt. |
Relaterad primitiv datatyp | |
Integer är omslagsklassen relaterad till int-datatypen. | Float är omslagsklassen relaterad till floatdatatyp. |
Sammanfattning – heltal vs flytande
Det finns åtta stora primitiva typer i Java. De är int, short, byte, long, boolean, char, float och double. Ibland är det nödvändigt att konvertera de primitiva datatyperna till objekt och objekt till primitiva typer. Omslagsklasser används för det. Varje primitiv typ har en motsvarande omslagsklass. Dessa omslagsklasser är Integer, Short, Byte, Long, Boolean, Char, Float och Double. Den här artikeln diskuterade skillnaden mellan heltal och flytande. Skillnaden mellan Integer och Float är att Integer är omslagsklassen relaterad till int primitiv datatyp medan Float är wrapperklassen relaterad till flytande primitiv datatyp.