這段代碼會帶來哪些修改?在最後幾行,我應該用更多的的if-else結構,而不是 「如果 - 如果 - 如果」使用字符串選項優化if-else/switch-case
if (action.equals("opt1"))
{
//something
}
else
{
if (action.equals("opt2"))
{
//something
}
else
{
if ((action.equals("opt3")) || (action.equals("opt4")))
{
//something
}
if (action.equals("opt5"))
{
//something
}
if (action.equals("opt6"))
{
//something
}
}
}
後來編輯:這就是Java。我不認爲switch-case結構可以和Strings一起使用。
後來編輯2:
的開關的工作原理與字節,短, 炭,和INT基本數據類型。它 也與枚舉類型 (中類和繼承討論) 和一些特殊類作品是「包裝」 某些基本類型:字符, 字節,短,和Integer(以簡單的數據對象討論 )。
選項必須是字符串嗎?如果你可以讓它們成爲一個枚舉(或者當你獲得它時將字符串解析爲枚舉),那麼你可以使用一個開關。 – 2009-10-08 06:45:05
請在提出這種問題時指定要「優化」的內容:例如可讀性,性能等。簡單地說:「你如何優化這些代碼?」沒有任何意義。我只提到這一點,因爲我看到一些迴應假定你的意思是性能,而另一些人則假設你的意思是可讀性 - 這實際上可能是互斥的優化。 – SingleShot 2009-10-08 07:25:18
請將您的文章標題改爲:「優化帶字符串選項的if-else/switch-case」。目前的標題是沒有意義的。我會在此之後投票提出你的問題 – 2009-10-08 07:27:29