У Јави, која је техничка разлика између израза "++ к" и "к = к + 1"?


Одговор 1:

Драги пријатељу, љубазно кажи свом учитељу да су некада одговарали на оваква питања и зато су професионалци.

Било који начин, дођимо до питања:

Рецимо к = 9. Сада ако користимо ++ к у било којем од израза, то значи да се најпре вредност к повећава, а затим користи, тј. Где год користите ++ к, користиће се вредност 10 уместо 9 и вредност ће остати 10 док се не догоди друга промена.

Сада ако користимо (к = к + 1 или к + = 1 или к ++), вредност се прво користи, а затим повећава. Израз у којем се к = к + 1 користи прво користиће вредност 9, а вредност 10 ће бити сачувана у к док се не догоди друга промена.

Мислим да је разлика јасна. Ако не, оставите коментар.


Одговор 2:
цласс куора {публиц статиц воид маин (Стринг [] аргс) {инт к = 5; к = к + 1; Систем.оут.принтлн (к); к ++; Систем.оут.принтлн (к); }}
Састављено из „куора.јава“ класе куора {куора (); Код: 0: алоад_0 1: инвокеспециал # 1 // Метода јава / ланг / Објецт. " ":() В 4: повратак на јавни јавни статички воид маин (јава.ланг.Стринг []); Код: 0: ицонст_5 1: исторе_1 2: илоад_1 3: ицонст_1 4: иадд // к = к + 1 5: исторе_1 6 : гетстатиц # 2 // Поље јава / ланг / Систем.оут: Љава / ио / ПринтСтреам; 9: илоад_1 10: инвокевиртуал # 3 // Метода јава / ио / ПринтСтреам.принтлн: (И) В 13: иинц 1, 1 // к ++ 16: гетстатиц # 2 // Поље јава / ланг / Систем.оут: Љава / ио / ПринтСтреам; 19: илоад_1 20: инвокевиртуал # 3 // Метода јава / ио / ПринтСтреам.принтлн: (И) В 23: повратак}