У Јави користимо инт и Интегер за складиштење целобројних типова података. Сада, питање које долази одавде је да ако се оба користе за складиштење исте врсте података, која је онда разлика између њих и зашто су нам потребна оба? Дакле, главна разлика између инт и Интегер је да је инт примитивног типа података док је Интегер типа класе. У развоју ООПс апликације, инт се понаша по принципу примитивног примитивног типа података и понаша се као класа омотача .
пун облик иде
Хајде да заронимо у детаље и разумемо неке друге важне разлике између инт и Интегер .
Разлика између инт и интегер
г. бр. | Фактор | инт | Интегер |
---|---|---|---|
1. | Тип | Инт је примитиван тип података који је способан да складишти 32-битни цео број са предзнаком. | Интегер је класа омотача за тип података типа инт која нам даје већу флексибилност у претварању, складиштењу и манипулацији инт подацима. |
2. | Флексибилност | Инт дозвољава само бинарну вредност целог броја у себи и због тога пружа мању флексибилност. | Интегер је класа омотача за инт и пружа већу флексибилност у поређењу са инт. |
3. | Сврха | Користи се само за једну сврху, тј. чување целобројне вредности у меморији. | Његова главна сврха је да претвори инт у објекат или објекат у инт. |
4. | Коришћење меморије | Потребно је 4 бајта да би се у њему сачувала целобројна вредност. | Потребно је 16 бајтова за складиштење целобројне вредности у њему. |
5. | Основна конверзија | Не можемо конвертовати целобројну вредност инт у другу базу. | Класа Интегер пружа неколико корисних метода, као што су тоБинариСтринг(), тоОцталСтринг() и тоХекСтринг(), које нам омогућавају да директно конвертујемо целобројну вредност сачувану у Интегер-у. |
6. | Типе Цастинг | Не можемо проследити децималну вредност и вредност низа променљивој типа инт. Цастинг такође није подржан за то. | Интегер пружа неколико начина за прослеђивање децималне или стринг вредности објекту типа Интегер. Интегер(Стринг) и парсеИнт(Стринг) су два начина на која можемо претворити стринг у инт вредност. |
7. | Операције | Операције нису дозвољене јер се не користе уграђене функције. | Можемо да изводимо операције као што је преокретање броја, ротирање улево или десно. |
Узмимо неке примере који се односе на кастинг, основну конверзију, операције и флексибилност да бисмо разумели разлике између њих.
ЦастингЕкампле.јава
танак алгоритам
//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); } }
Излаз:
ЦастингЕкампле.јава
//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); } }
Излаз:
ФлекибилитиЕкампле.јава
//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)); } }
Излаз:
хибернација дијалекта