范例(Examples)
我從下列這段簡(jiǎn)單代碼開始:
int discount(int inputVal, int quantity, int yearToDate) {
if(inputVal > 50) inputVal -= 2;
if(quantity > 100) inputVal -= 1;
if(yearToDate > 1000) inputVal -= 4;
return inputVal;
}
以臨時(shí)變量取代對(duì)參數(shù)的賦值動(dòng)作,得到下列代碼:
int discount(int inputVal, int quantity, int yearToDate) {
int result = inputVal;
if(inputVal > 50) result -= 2;
if(quantity > 100) result -= 1;
if(yearToDate > 1000) result -= 4;
return result
}
還可以為參數(shù)加上關(guān)鍵詞final,從而強(qiáng)制它遵循[不對(duì)參數(shù)賦值]這一慣例:
int discount(final int inputVal, final int quantity, final int yearToDate) {
int result = inputVal;
if(inputVal > 50) result -= 2;
if(quantity > 100) result -= 1;
if(yearToDate > 1000) result -= 4;
return result
}
不過我的承認(rèn),我并不經(jīng)常使用final來修飾參數(shù),因?yàn)槲野l(fā)現(xiàn),對(duì)于提高短函數(shù)的清晰度,這個(gè)辦法并無太大幫助。我通常會(huì)在較長(zhǎng)的函數(shù)中使用它,讓它幫助我檢查參數(shù)是否被做了修改。
我從下列這段簡(jiǎn)單代碼開始:
int discount(int inputVal, int quantity, int yearToDate) {
if(inputVal > 50) inputVal -= 2;
if(quantity > 100) inputVal -= 1;
if(yearToDate > 1000) inputVal -= 4;
return inputVal;
}
以臨時(shí)變量取代對(duì)參數(shù)的賦值動(dòng)作,得到下列代碼:
int discount(int inputVal, int quantity, int yearToDate) {
int result = inputVal;
if(inputVal > 50) result -= 2;
if(quantity > 100) result -= 1;
if(yearToDate > 1000) result -= 4;
return result
}
還可以為參數(shù)加上關(guān)鍵詞final,從而強(qiáng)制它遵循[不對(duì)參數(shù)賦值]這一慣例:
int discount(final int inputVal, final int quantity, final int yearToDate) {
int result = inputVal;
if(inputVal > 50) result -= 2;
if(quantity > 100) result -= 1;
if(yearToDate > 1000) result -= 4;
return result
}
不過我的承認(rèn),我并不經(jīng)常使用final來修飾參數(shù),因?yàn)槲野l(fā)現(xiàn),對(duì)于提高短函數(shù)的清晰度,這個(gè)辦法并無太大幫助。我通常會(huì)在較長(zhǎng)的函數(shù)中使用它,讓它幫助我檢查參數(shù)是否被做了修改。