2 回答

TA貢獻(xiàn)1811條經(jīng)驗(yàn) 獲得超4個(gè)贊
這條線
if (myList[i] > max) max = myList[i];
可以看作
if (myList[i] > max)
{
max = myList[i];
}
即它有一個(gè)條件if,當(dāng)它滿足時(shí),有一個(gè)關(guān)于做什么的聲明。即第二個(gè)max不是 的邏輯表達(dá)式的if一部分,它是有條件執(zhí)行的代碼的一部分。
總的效果是查看 中的每個(gè)條目myList,將其與之前看到的最大值進(jìn)行比較,并保留較高的值,作為之前看到的最高值。
關(guān)于“為什么?”,這是一個(gè)品味問(wèn)題。
優(yōu)點(diǎn)是輸入的字符更少,閱讀的代碼“更短”。
我總是使用較長(zhǎng)版本的原因主要是編碼規(guī)則,這些規(guī)則對(duì)于維護(hù)越重要,從事給定項(xiàng)目的不同人員越多。

TA貢獻(xiàn)1982條經(jīng)驗(yàn) 獲得超2個(gè)贊
假設(shè)如果您在 for 循環(huán)中聲明“double max = myList[0];”,對(duì)于每個(gè)迭代,max 變量將被聲明并初始化為列表中的第一個(gè)元素。
例如,如果列表包含 2, 4, 1, 9, 8 我們認(rèn)為 2 是最大值(因此將 2 存儲(chǔ)在 max 變量中)然后將 2 與列表中的其他值進(jìn)行比較
如果在 IF 中只有一個(gè)語(yǔ)句要執(zhí)行,那么您可以編寫不帶括號(hào)的 IF
喜歡
如果(a>b)
System.out.println(a + "is greater");
它類似于
如果(a>b)
{
System.out.println(a + "is greater");
}
添加回答
舉報(bào)