int count()
{
return 5;
}
int variable = count();
switch(variable)
{
} //this works correct
switch(count())
{
}//this also works correct.
但是,哪些是正確的方法,兩者之間的性能比較是什麼? 切換語句總是隻需要一個參數?直接將函數調用作爲參數的開關語句
int count()
{
return 5;
}
int variable = count();
switch(variable)
{
} //this works correct
switch(count())
{
}//this also works correct.
但是,哪些是正確的方法,兩者之間的性能比較是什麼? 切換語句總是隻需要一個參數?直接將函數調用作爲參數的開關語句
但其中哪些是正確的做法
沒有什麼不正確使用兩種方法。 switch(count())
簡單比switch(variable)
簡潔。
聲明變量可以使代碼更易讀,例如
final int month = Integer.parseInt(dateMonthYearString.split("/")[1]);
switch(month){/*...*/}
這兩者之間的性能比較是什麼?
我懷疑表現會有什麼不同。當然不是值得擔心的事情。
切換語句總是隻需要一個顯式的參數?
我不確定你的意思。 switch
聲明中的表達式必須評估爲int
,short
,byte
,char
或enum
。從Java 1.7起,該表達式還可以返回String
。
字符串可以從Java 7開始使用。開關也可以在'enum'上運行。 –
謝謝!我會更新我的答案 –
最後一條語句更好,因爲count()只被調用一次。
在OOP中,您可以避免在某些情況下使用設計模式狀態的開關,以獲得比這兩者更好的性能。 「用多態性替換開關/外殼」是一種供您參考的技術。
它沒有任何區別。做任何事情使得最可讀的代碼。 – VGR
第二個更好,因爲代碼更具可讀性。但是如果你打算在代碼中再次使用它,最好保存結果,以免再次計算。 – kemis
你是什麼意思的顯式參數? – zEro