Java mes naudojame tarpt ir Sveikasis skaičius sveikųjų skaičių duomenų saugojimui. Iš čia kyla klausimas, kad jei abu naudojami to paties tipo duomenims saugoti, kuo jie abu skiriasi ir kodėl mums reikia jų abiejų? Taigi, pagrindinis skirtumas tarp tarpt ir Sveikasis skaičius yra tai, kad int yra primityvaus duomenų tipo, o sveikasis skaičius yra klasės tipo. Kuriant OOPs programą, int veikia pagal primityvaus primityvaus duomenų tipo principą ir elgiasi kaip vyniojimo klasė .
shweta tiwari aktorius
Pasinerkime į detales ir supraskime kai kuriuos kitus svarbius skirtumus tarpt ir Sveikasis skaičius .
Skirtumas tarp int ir sveikojo skaičiaus
ponas Nr. | veiksnys | tarpt | Sveikasis skaičius |
---|---|---|---|
1. | Tipas | Int yra primityvus duomenų tipas, galintis saugoti 32 bitų pasirašytą dviejų komplemento sveikąjį skaičių. | Sveikasis skaičius yra int duomenų tipo įpakavimo klasė, kuri suteikia mums daugiau lankstumo konvertuojant, saugant ir manipuliuojant int duomenimis. |
2. | Lankstumas | Int leidžia jame įrašyti tik dvejetainę sveikojo skaičiaus reikšmę, todėl ji suteikia mažiau lankstumo. | Sveikasis skaičius yra int įvyniojimo klasė ir suteikia daugiau lankstumo, palyginti su int. |
3. | Tikslas | Jis naudojamas tik vienam tikslui, ty išsaugoti sveikojo skaičiaus reikšmę atmintyje. | Jo pagrindinis tikslas yra paversti int į objektą arba objektą į int. |
4. | Atminties naudojimas | Norint jame išsaugoti sveikąjį skaičių, reikia 4 baitų. | Norint jame išsaugoti sveikąjį skaičių, reikia 16 baitų. |
5. | Bazinė konversija | Negalime konvertuoti sveikojo skaičiaus int reikšmės į kitą bazę. | Integer klasėje pateikiami keli naudingi metodai, pvz., toBinaryString(), toOctalString() ir toHexString(), kurie leidžia tiesiogiai konvertuoti sveikojo skaičiaus reikšmę, saugomą sveikajame skaičiuje. |
6. | Tipas Liejimas | Negalime perduoti dešimtainės ir eilutės reikšmės int tipo kintamajam. Casting taip pat nepalaikomas. | Sveikasis skaičius suteikia keletą būdų, kaip perduoti dešimtainę arba eilutės reikšmę sveikojo skaičiaus objektui. Integer(String) ir parseInt(String) yra du būdai, kuriais galime konvertuoti eilutę į int reikšmę. |
7. | Operacijos | Operacijos neleidžiamos, nes nenaudojamos įmontuotos funkcijos. | Galime atlikti tokias operacijas, kaip pakeisti skaičių, pasukti į kairę arba pasukti į dešinę. |
Paimkime keletą pavyzdžių, susijusių su perdavimo, bazės konvertavimu, operacijomis ir lankstumu, kad suprastume jų abiejų skirtumus.
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); } }
Išvestis:
java numatytieji parametrai
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); } }
Išvestis:
LankstumasPavyzdys.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)); } }
Išvestis: