מהו += המטפל בתוספת המטמון בשפת ג'אווה?

זהו אופרטור ההשמה לחיבור. בואו נבין את האופרטור += ב-Java ונלמד להשתמש בו בתכנות היום-יומי שלנו.

x += y in Java is the same as x = x + y.

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

הגדלת ערכים באמצעות האופרטור +=

בקוד הזה, נגדיל את ערך של a ב-2. בואו נראה דוגמאות:

int a = 1;
a+=2;
System.out.println(a);
Output

מצד שני, אם נשתמש ב-a++:

int a = 1;
a++;
System.out.println(a);
Output

ערך של a יגדל ב-1 בלבד.

שימוש ב-+= בלולאות ב-Java

ניתן גם להשתמש באופרטור += עם לולאת for:

for(int i=0;i<10;i+=2)
{
    System.out.println(i);
}
Output

ערך של i מתעדכן ב-2 בכל איטרציה.

עבודה עם סוגי נתונים מרובים

משהו מעניין לשים לב אליו הוא שהוספת מספר שלם למספר עשרוני באמצעות התווספות רגילות תגרום לשגיאה ב-Java.

int a = 1;
a = a + 1.1; // מתן שגיאה 
a += 1.1;
System.out.println(a);

השורה הראשונה כאן נותנת שגיאה מכיוון ש- int אינו יכול להיות נוסף ל- double.

פלט:

error: incompatible types: possible lossy conversion from double to int
a = a + 1.1; // נותן שגיאה

אולם, כאשר משתמשים באופרטור += ב-Java, ההוספה עובדת בצורה תקינה מאחר ו-Java ממירה עכשיו את ה-double לערך של מספר שלם ומוסיפה אותו כ-1. הנה הפלט כאשר הקוד מורץ רק עם ההוספה באופרטור += בלבד.

Output

E1 op= E2 הוא שקול ל- E1 = (T) ((E1) op (E2)), כאשר T הוא סוג המשתנה של E1, עם ההבחנה ש-E1 מוערך רק פעם אחת. זהו תהליך של typecasting של Java כדי להוסיף את שני המספרים.

חיבור מחרוזות

האופרטור += עובד גם עבור השתנות של מחרוזות.

String a = "Hello";
a+="World";
System.out.println(a);
Output

המחרוזת "שלום" עברה השתנות והמחרוזת "עולם" נחברה אליה.

מסקנה

ה- += הוא אופרטור ההשמה חשוב. הוא משמש באופן נרחב בלולאות. אותו השמה עובדת גם עם אופרטורים אחרים כמו -=, *=, /=.

Source:
https://www.digitalocean.com/community/tutorials/addition-assignment-operator-in-java