logo

int לעומת אינטגר ג'אווה

ב-Java, אנו משתמשים int ו מספר שלם לאחסן סוגי נתונים שלמים. עכשיו, השאלה שמגיעה מכאן היא שאם שניהם משמשים לאחסון אותו סוג של נתונים, אז מה ההבדל בין שניהם, ולמה אנחנו צריכים את שניהם? אז, ההבדל העיקרי בין int ו מספר שלם הוא שה-int הוא מסוג נתונים פרימיטיבי בעוד שה-Integer הוא מסוג מחלקה. בפיתוח אפליקציית OOPs, int מתנהג לפי העיקרון של סוג הנתונים הפרימיטיביים הפרימיטיביים ומתנהג כמו שיעור עטיפה .

int לעומת אינטגר ג'אווה

בואו נצלול לפרטים ונבין כמה הבדלים חשובים אחרים ביניהם int ו מספר שלם .

ההבדל בין int למספר שלם

מר לא. גורם int מספר שלם
1. סוּג int הוא סוג נתונים פרימיטיבי המסוגל לאחסן את המספר השלם המשלים של 32 סיביות בסימן שני. מספר שלם הוא מחלקה עטיפה לסוג הנתונים int המעניקה לנו גמישות רבה יותר בהמרה, אחסון ומניפולציה של נתוני int.
2. גְמִישׁוּת int מאפשר רק את הערך הבינארי של מספר שלם בו, ובשל כך הוא מספק פחות גמישות. מספר שלם הוא מחלקה עטיפה עבור int ומספקת גמישות רבה יותר בהשוואה ל-int.
3. מַטָרָה הוא משמש למטרה אחת בלבד, כלומר, אחסון ערך של מספר שלם בזיכרון. המטרה העיקרית שלו היא להמיר int לאובייקט או אובייקט ל-int.
4. שימוש בזיכרון נדרשים 4 בתים כדי לאחסן בו ערך של מספר שלם. נדרשים 16 בתים כדי לאחסן בו ערך של מספר שלם.
5. המרה בסיסית איננו יכולים להמיר את הערך השלם של int לבסיס אחר. המחלקה Integer מספקת מספר שיטות שימושיות, כגון toBinaryString(), toOctalString() ו-toHexString(), המאפשרות לנו להמיר ישירות את הערך השלם המאוחסן ב-Integer.
6. סוג ליהוק איננו יכולים להעביר את הערך העשרוני והמחרוזת למשתנה מסוג int. ליהוק גם לא נתמך בשביל זה. מספר שלם מספק מספר דרכים להעביר ערך עשרוני או מחרוזת לאובייקט מסוג שלם. ה-Integer(String) וה-parseInt(String) הן שתי הדרכים שבאמצעותן נוכל להמיר מחרוזת לערך int.
7. פעולות פעולות אינן מותרות בגלל אי ​​שימוש בפונקציות המובנות. אנו יכולים לבצע פעולות כמו היפוך מספר, סיבובו שמאלה או סיבובו ימינה.

בואו ניקח כמה דוגמאות הקשורות ל-casting, המרת בסיס, פעולות וגמישות כדי להבין את ההבדלים בין שניהם.

java core java

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); } } 

תְפוּקָה:

המרת מחרוזת ל-char
int לעומת אינטגר ג'אווה

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); } } 

תְפוּקָה:

int לעומת אינטגר ג'אווה

FlexibilityExample.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)); } } 

תְפוּקָה:

int לעומת אינטגר ג'אווה