Nyckelskillnad – Wrapper Class vs Primitive Type in Java
Java är ett populärt programmeringsspråk som används för att utveckla olika applikationer. En fördel med Java är att den stöder Object Oriented Programming (OOP). Med OOP kan programmet eller programvaran modelleras med hjälp av objekt. En klass används som en ritning för att skapa ett objekt. Vid programmering är det nödvändigt att lagra data. Reserverade minnesplatser för att lagra data kallas variabler. Varje variabel har en specifik datatyp. Det finns åtta primitiva typer som tillhandahålls av Java-språket. De är korta, byte, int, float, double, char, boolean. Ibland krävs det att konvertera den primitiva typen till ett objekt och objektet tillbaka till den primitiva typen. Omslagsklasserna används för denna konvertering. Den här artikeln diskuterar skillnaden mellan omslagsklass och primitiv typ i Java. Den viktigaste skillnaden mellan wrapperklass och primitiv typ i Java är att wrapperklass används för att konvertera en primitiv typ till ett objekt och objekt tillbaka till primitiv typ medan en primitiv typ är en fördefinierad datatyp som tillhandahålls av Java-programmeringsspråket.
Vad är Wrapper Class i Java?
En Wrapper-klass i Java används för att konvertera en primitiv datatyp till ett objekt och objekt till en primitiv typ. Även de primitiva datatyperna används för att lagra primära datatyper, datastrukturer som Array Lists och Vectors lagra objekt. Därför är det nödvändigt att använda omslagsklasser för konverteringen. Motsvarande omslagsklasser för primitiva typer char, byte, short och int är Character, Byte, Short och Integer. Motsvarande omslagsklasser för long, float, double och boolean är Long, Float, Double och Boolean.
Figur 01: Java-program som konverterar Wrapper-klasserna till primitiva typer
I enlighet med ovanstående program är intobj ett Integer wrapper-klassobjekt. Floatobj är ett Float wrapper-klassobjekt. Doubleobj är ett dubbelt omslagsobjekt. Integer-objektet konverteras till en primitiv int med hjälp av intValue (). På liknande sätt konverteras Float-objektet till en primitiv float med floatValue(). Double-objektet konverteras till primitiv dubbel med hjälp av doubleValue (). Om programmeraren skriver satsen som int i=intobj; kompilatorn skriver internt intobj. Value(). Processen att automatiskt konvertera ett objekt av en omslagsklass till dess motsvarande primitiva typ kallas unboxing. Samlingar som ArrayLists använder Wrapper-klassen eftersom de lagrar objekt.
Vad är primitiv typ i Java?
De primitiva datatyperna är de fördefinierade datatyperna som tillhandahålls av programmeringsspråket Java. Det finns åtta primitiva typer. De är byte, short, int, long, float, double, boolean och char. Bytedatatypen används för att lagra ett 8-bitars signerat tvås komplementheltal. Den korta datatypen används för att lagra 16-bitars signerad tvås komplementheltal. En int-datatyp används för att lagra 32-bitars signerad tvås komplementheltal medan lång datatyp används för att lagra 64-bitars singade tvås komplementheltal. Floaten används för att lagra enkla precision 32-bitars flyttal värde och dubbla används för att lagra dubbel precision 64-bit flyttals värde. Boolean används för att representera sant eller falskt. Tecknet används för att lagra ett enda tecken. Det är de åtta primitiva typerna i Java.
Figur 02: Java-program som konverterar de primitiva typerna till Wrapper-klasser
Enligt programmet ovan är num1 en int-typ. Det konverteras till ett heltal genom att skicka num1 till Integer.valueOf(). Float1 kan lagra flytvärden. Den konverteras till Float-typ genom att skicka float1 till Float.valueOf(). På samma sätt kan double1 lagra dubbla värden. Den konverteras till Double typ genom att skicka double1 till Double.valueOf(). Om programmeraren skriver satsen som Interger intobj=num1; kompilatorn skriver internt Integer.valueOf(tal1); Processen att automatiskt konvertera den primitiva typen till motsvarande omslagsklassobjekt kallas autoboxing.
Vad är likheten mellan omslagsklass och primitiv typ i Java?
Både Wrapper class och Primitive Type i Java kan användas för att lagra data i programmering
Vad är skillnaden mellan omslagsklass och primitiv typ i Java?
Wrapper Class vs Primitive Type in Java |
|
Wrapper-klassen tillhandahåller en mekanism för att omvandla primitiv typ till objekt och objekt till primitiv typ. | En primitiv typ är en fördefinierad datatyp som tillhandahålls av Java. |
Associated Class | |
En Wrapper-klass används för att skapa ett objekt; därför har den en motsvarande klass. | En primitiv typ är inte ett objekt så den tillhör inte en klass. |
Nullvärden | |
Wrapper-klassobjekten tillåter nollvärden. | En primitiv datatyp tillåter inte nollvärden. |
Minne krävs | |
Nödvändigt minne är högre än de primitiva typerna. Clustered Index kräver inget extra utrymme. | Nödvändigt minne är lägre jämfört med omslagsklasser. |
Collections | |
En Wrapper-klass kan användas med en samling som ArrayList, etc. | En primitiv typ används inte med samlingar. |
Sammanfattning – Wrapper Class vs Primitive Type in Java
Java-språket tillhandahåller åtta primitiva datatyper. Ibland krävs det att man konverterar de primitiva typerna till objekt och även att konvertera objekten tillbaka till primitiva. Omslagsklasser kan användas för att uppnå den uppgiften. Skillnaden mellan wrapper-klass och primitiv typ i Java är att wrapper-klass används för att konvertera en primitiv typ till ett objekt och objekt tillbaka till en primitiv typ medan en primitiv typ är en fördefinierad datatyp som tillhandahålls av Java-programmeringsspråket.