記得動畫製作的三個步驟嗎?
首先在繪圖迴圈以外,我們寫一些變數
然後在繪圖迴圈以内,我們利用
那些變數於繪圖程式碼裏
我們有個變數來代表 x 位置
一個代表 y 位置,一個代表球 ballWidth
還有一個代表 ballHeight
然後,在最後面
我們逐漸改變那些變數
x 將成爲 x 舊的值,加 1
所以它每次將會增量
y 將成爲 y 舊的值,減 2
所以 y 每次將會減量
ballWidth 會得到
ballWidth 舊的值,乘 0.99
皆因 0.99 少於 1,我們將會看到球寬縮小
而 ballHeight 會被定為
ballHeight 舊的值,除 1.01
皆因大於 1,我們也將看到球寬縮小
若我按 Restart,你能看到
這顆球全部的屬性都在改變
如果你看看這四行程式碼
你會發現它們全都跟隨著一個相似的模式
我們有一個變數,然後一個等號
然後同一個變數,一些運算子 —
加、減、乘、除 —
還有一些數字
這模式在程式設計裡實在是太常見
而程式設計師又非常懶惰,
所以他們決定:
嘿!既然我們經常地用這模式,
那該有個更簡單的方法來寫它吧?
所以他們造了一個捷徑,
而那捷徑是這樣的:
與其寫 x 得到 x 加 1
我可以寫 x += 1,懂嗎?
與其寫 y 得到 y 減 2,
我可以寫 y -= 2
與其寫 ballWidth 得到 ballWidth 乘 0.99
我可以寫 —你猜對了—
ballWidth *= 0.99
最後,與其寫 ballHeight 得到
ballHeight 除 1.01
我們可以寫 ballHeight /= 1.01
而這些全部,它的作用是
它拿變數的值
所以 ballWidth,還有這運算子
然後將它乘以 0.99
所以它便會是 ballWidth x 0.99
然後將它存回 ballWidth 這變數裡
如果我按 Restart 你將看到
我們的動畫跟之前的一摸一樣
而你現在也能一起懶惰!