logo

int vs Integer Java

I Java bruger vi int og Heltal at gemme heltalstyper af data. Nu, spørgsmålet, der kommer herfra, er, at hvis begge bruges til at gemme den samme type data, hvad er så forskellen mellem dem begge, og hvorfor har vi brug for dem begge? Så den største forskel mellem int og Heltal er, at int er af primitiv datatype, mens heltal er af klassetype. I udviklingen af ​​OOPs-applikationen opfører int sig efter princippet om den primitive primitive datatype og opfører sig som en indpakningsklasse .

int vs Integer Java

Lad os dykke ned i detaljer og forstå nogle andre vigtige forskelle mellem int og Heltal .

Forskellen mellem int og heltal

Mr. Nej. Faktor int Heltal
1. Type En int er en primitiv datatype, der er i stand til at lagre 32-bit fortegns to's komplementheltal. Et heltal er en indpakningsklasse for int-datatypen, der giver os mere fleksibilitet til at konvertere, lagre og manipulere int-data.
2. Fleksibilitet En int tillader kun den binære værdi af et heltal i den, og på grund af hvilken den giver mindre fleksibilitet. Et heltal er en indpakningsklasse for int og giver mere fleksibilitet i forhold til int.
3. Formål Det bruges kun til et enkelt formål, dvs. at gemme en heltalsværdi i hukommelsen. Dens hovedformål er at konvertere en int til et objekt eller et objekt til en int.
4. Hukommelsesbrug Det tager 4 bytes at gemme en heltalsværdi i den. Det tager 16 bytes at gemme en heltalsværdi i den.
5. Grundkonvertering Vi kan ikke konvertere heltalsværdien af ​​int til en anden base. Integer-klassen giver flere nyttige metoder, såsom toBinaryString(), toOctalString() og toHexString(), der giver os mulighed for direkte at konvertere heltalsværdien, der er gemt i Integer.
6. Type Støbning Vi kan ikke videregive decimal- og strengværdien til en variabel af typen int. Casting understøttes heller ikke til det. Heltal giver flere måder at overføre en decimal- eller strengværdi til et objekt af typen heltal. Integer(String) og parseInt(String) er de to måder, hvorpå vi kan konvertere en streng til en int-værdi.
7. Operationer Operationer er ikke tilladt på grund af manglende brug af de indbyggede funktioner. Vi kan udføre operationer såsom at vende et tal, dreje det til venstre eller dreje det til højre.

Lad os tage nogle eksempler relateret til casting, basiskonvertering, operationer og fleksibilitet for at forstå forskellene mellem dem begge.

CastingExample.java

 //creating CastingExample class to understand difference between int and Integer based on casting public class CastingExample { //main() method starts public static void main(String args[]) { //creating an integer by taking a string value Integer data = new Integer('987'); // int data = (int)'987'; we cannot typecast string to int // int newData = '987'; we cannot directly pass string value to int // by using the parseInt() method of the Integer Wrapper class, we can perform casting int newData = Integer.parseInt('987'); //print newData, i.e., of type int System.out.print(data+' '+newData); } } 

Produktion:

int vs Integer Java

CastingExample.java

 //create BaseConversionExample class to convert the integer value into different bases public class BaseConversionExample { //main() method starts public static void main(String args[]) { //change the base to binary String binVal = Integer.toBinaryString(987); //change the base to octal String octVal = Integer.toOctalString(98); //change the base to hexadecimal String hexVal = Integer.toHexString(987); System.out.print('Binary value of 987 is: ' + binVal + '
Octal value of 987 is: ' + octVal + '
Hexadecimal value of 987 is: ' + hexVal); } } 

Produktion:

int vs Integer Java

FleksibilitetEksempel.java

 //import classes and packages that are required import java.util.function.Function; import java.util.function.Function; //create FlexibilityExample class to check flexibility of the wrapper class public class FlexibilityExample { //main() method starts public static void main(String args[]) { Integer x = new Integer('23'); //create an integer variable x of type object Integer y = new Integer('55'); //create an integer variable y of type object int p = 12; //create an integer variable p of primitive type double q = 4.23; //create a varibale q of type double Double z = new Double('8.6'); //create a variable x of type object that holds double value //print the sum of 2 Integer objects System.out.println('Sum :' + (x + y)); //print the sum of a double object and an Integer object System.out.println('Sum :' + (y + z)); //print the sum of an int value and an Integer object System.out.println('Sum :' + (p + x)); //print the sum of a double value and an Integer object System.out.println('Sum :' + (q + y)); } } 

Produktion:

int vs Integer Java