מה זה Typecasting ב- Java ואיך זה עובד?



הטלת סוג ב- Java מקצה ערך לסוג נתונים פרימיטיבי אחד למשנהו. במאמר זה אספר לכם על סוגים שונים של המרת סוג.

תכנות הוא משחק עם נתונים. ב , ישנם סוגי נתונים רבים. לרוב בזמן קידוד יש צורך לשנות את סוג הנתונים כדי להבין את עיבוד המשתנה וזה נקרא Type Casting. במאמר זה אדבר על יסודות הליהוק מסוג ג'אווה.

הנושאים הבאים מכוסים במאמר זה:

בואו נתחיל!





מה זה סוג יציקה?

יציקת סוג אינה אלא הקצאת ערך של ערך אחד לאחר. כאשר אתה מקצה את הערך של סוג נתונים אחד למשנהו, עליך להיות מודע לתאימות של סוג הנתונים. אם הם תואמים, אז יבצע את ההמרה המכונה באופן אוטומטי המרת סוג אוטומטית ואם לא, צריך ללהק או להמיר אותם במפורש.

ישנם שני סוגים של ליהוק ב- Java כדלקמן:



  • הרחבת הליהוק (באופן אוטומטי) - זה כולל המרה של סוג נתונים קטן יותר לגודל הסוג הגדול יותר.

    בתים -> קצר -> char -> int -> ארוך -> לצוף -> כפול

  • יציקה צרה (ידנית) - זה כולל המרה של סוג נתונים גדול יותר לסוג גודל קטן יותר.



    מחלקת אחסון c ++

    כפול -> צף -> ארוך -> int -> char -> קצר -> בתים

עכשיו בואו ניכנס לפרטים של סוגי הליהוק.

הליהוק הרחב

סוג הליהוק הזה מתרחש כאשר שני סוגי נתונים מומרים אוטומטית. זה ידוע גם בשם המרה משתמעת. זה קורה כאשר שני סוגי הנתונים תואמים וגם כאשר אנו מקצים את הערך של קטן יותר לסוג נתונים גדול יותר.

מקורב מוסמך - שולחן עבודה 9

לדוגמה, סוגי הנתונים המספריים תואמים זה לזה אך אין תמיכה בהמרה אוטומטית מסוג מספרי לשרש או בוליאני. כמו כן, החרבן והבוליאני אינם תואמים זה לזה. עכשיו בואו נכתוב לוגיקה עבור ליהוק מסוג Implicit כדי להבין איך זה עובד.

המרה של מחלקה ציבורית {ציבורי ריק ריק ראשי (מחרוזת [] טענות) {int i = 200 // המרה מסוג אוטומטי ארוך l = i // המרת סוג אוטומטי לצוף f = l System.out.println ('ערך Int' + i) System.out.println ('ערך ארוך' + l) System.out.println ('ערך צף' + f)}}

תְפוּקָה:

ערך Int 200 ערך ארוך 200 ערך צף 200.0

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

יציקה צרה

במקרה זה, אם ברצונך להקצות ערך מסוג נתונים גדול יותר לסוג נתונים קטן יותר, תוכל לבצע ליהוק מסוג מפורש או צמצום. זה שימושי עבור סוגי נתונים שאינם תואמים שבהם לא ניתן לבצע המרה אוטומטית.

בואו נבין זאת בעזרת דוגמא.

// תוכנית Java להמחשת המרה מסוג מפורש מחלקה ציבורית צמצום {ציבורי ריק סטטי ראשי (מחרוזת [] טענות) {כפול d = 200.06 // סוג מפורש ליהוק ארוך l = (ארוך) ד // סוג מפורש ליהוק int i = (int ) l System.out.println ('ערך סוג נתונים כפול' + ד) // חלק חלקי אבד System.out.println ('ערך סוג נתונים ארוך' + l) // חלק חלקי אבוד System.out.println ('Int ערך סוג הנתונים '+ i)}}

תְפוּקָה:

ערך סוג נתונים כפול 200.06 ערך סוג נתונים ארוך 200 Int ערך סוג נתונים 200

כעת, כשתדעו לבצע הליהוק מסוג מפורש, נתקדם ונבין כיצד ניתן לבצע ליהוק מפורש בביטויי ג'אווה.

יציקה מסוג מפורש בביטויים

כאשר אתה מעריך את ביטויים, הפלט מתעדכן אוטומטית לסוג הנתונים הגדול יותר של האופראנד. אבל אם אתה שומר את התוצאה בסוג נתונים קטן יותר, היא יוצרת שגיאת זמן קומפילציה, שבגללה אנו צריכים להקליד את הפלט.

דוגמא:

// תוכנית Java כדי להמחיש ליהוק סוג int למחלקה ציבורית ExplicitTest {main public static void main (String args []) {byte b = 70 // type casting int to byte b = (byte) (b * 2) System.out .println (b)}}

תְפוּקָה:

140

הערה: במקרה של אופרנדים בודדים התוצאה מומרת ל- int ואז היא מטילה בהתאם.

def __init __ (עצמי)

אז זה היה הכל על יציקה מסוג מפורש בג'אווה.בכך אנו מגיעים לסוף מאמר זה. אנימקווה שמצאת את זה אינפורמטיבי. אם ברצונך ללמוד עוד, תוכל לבדוק את האתר שלנו גם כן.

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

יש לך שאלה עבורנו? אנא הזכיר זאת במדור התגובות במאמר זה 'סוג ליהוק ב- Java' ונחזור אליך בהקדם האפשרי.