17 回答
TA貢獻(xiàn)109條經(jīng)驗(yàn) 獲得超149個(gè)贊
答案都是17,但是應(yīng)該這么理解:賦值運(yùn)算符=是從右往左執(zhí)行的,先將17賦值給z,再將z賦值給y,最后將y賦值給x。
TA貢獻(xiàn)377條經(jīng)驗(yàn) 獲得超508個(gè)贊
推薦答案:
x = y = z = 17;
上面的表達(dá)式中有 三個(gè) 等號(hào) 操作符。當(dāng)有多個(gè)等號(hào)時(shí),等號(hào)運(yùn)算遵循右結(jié)合律,即從右到左進(jìn)行運(yùn)算。所以上面的表達(dá)式等價(jià)于:
x = (y = (z = 17));
TA貢獻(xiàn)16條經(jīng)驗(yàn) 獲得超4個(gè)贊
輸出的結(jié)果必須是值17,也即是變量必須賦值,才能操作。所以無(wú)所謂左右,前后。只要有值,且有等號(hào)賦值聯(lián)系,不管中間的過程,結(jié)果必然是值。
TA貢獻(xiàn)17條經(jīng)驗(yàn) 獲得超5個(gè)贊
Java運(yùn)算符按結(jié)合方向可以分為兩種:從左往右和從右往左。而賦值號(hào)屬于后者,所以
x?=?y?=?z?=?17;
這段代碼可以等效寫作:
(x?=?(y?=?(z?=?17)));
添加回答
舉報(bào)
