2015-02-11 82 views
0

我創建擁有公司的選擇和基於我展示車,並根據特定的汽車的選擇Android應用廣義使用,我想展示車的一些細節,例如容量,動力,發動機油等。現在我正在使用數組來存儲所有與汽車相關的信息。例如如何使來自多個陣列

private static final String[] car1={"624CC","33bhp","10W40"} 
private static final String[] car2={"1600CC","120bhp","10W40"} 

要檢查該部分,我已經爲每輛車使用了多個if-else語句。並根據選擇,我顯示值表單數組。

if(bn.equals("car 1")) 
    { 
     cap.setText(""+car1[0]); 
     powr.setText(""+car1[1]); 
     oil.setText(" "+car1[2]); 
    } 
    else if(bn.equals("car 2")) 
    { 
     cap.setText(""+car2[0]); 
     powr.setText(""+car2[1]); 
     oil.setText(" "+car2[2]); 
    } 
    else if(bn.equals("car 3")) 
    { 
     cap.setText(""+car3[0]); 
     powr.setText(""+car3[1]); 
     oil.setText(" "+car3[2]); 
    } 

現在的問題是,如果,否則增加的數量,我在Android Studio中獲得「守過大」的錯誤。 我想知道是否有任何方法可以用單一的一般化語句來替換這些多個if語句。正如你所看到的,如果其他所有代碼都是相同的,那麼它的名字就不一樣了。 我知道我可以使用SQLite數據庫,但我將不得不爲所有汽車再次添加所有值。所以想知道我是否可以使用我創建的同一個數組。任何解決方案/建議將是真正有用的

回答

0

大概在地名,你可以選擇保存價值的指標,並使用開關的情況下,找出選擇哪輛車的字符串比較。這應該減少代碼也使它更可讀。