2013-06-20 44 views
0

是否有可能通過使用數組和循環來實例化下面顯示的數據庫變量,因此不必輸入每一行?使用for循環和數組來實例化數據庫變量,有沒有更好的方法?

// example of one line only 

public static final String A0 = "a0"; 

如果有幾百行有沒有辦法做到這一點更好?

public class DatabasePrototype { 

    public static final String DATABASE_NAME = "database"; 
    public static final String SMALL_TANK_CHECK_RESULT = "small_tank_check_result"; 
    public static final String LARGE_TANK_CHECK_RESULT = "large_tank_check_result"; 

    public static final String CLEAN_TANK_RESULT = "clean_tank_result"; 
    public static final int DATABASE_VERSION = 1; 
    public static final String _ID = "_id"; 

    // variables for LARGE_TANK_CHECK_RESULT 
    public static final String A0 = "a0"; 
    public static final String A1 = "a1"; 
    public static final String A2 = "a2"; 
    public static final String A3 = "a3"; 
    public static final String A4 = "a4"; 
    public static final String A5 = "a5"; 
    public static final String A6 = "a6"; 
    public static final String A7 = "a7"; 
    public static final String A8 = "a8"; 
    public static final String A9 = "a9"; 
    public static final String A10 = "a10"; 
    public static final String A11 = "a11"; 
    public static final String A12 = "a12"; 
    public static final String A13 = "a13"; 
    public static final String A14 = "a14"; 
    public static final String A15 = "a15"; 
    public static final String A16 = "a16"; 
    public static final String A17 = "a17"; 
    public static final String A18 = "a18"; 
    public static final String A19 = "a19"; 
    public static final String A20 = "a20"; 
    public static final String A21 = "a21"; 
    public static final String A22 = "a22"; 
    public static final String A23 = "a23"; 
    public static final String A24 = "a24"; 
    public static final String A25 = "a25"; 
    public static final String A26 = "a26"; 
    public static final String A27 = "a27"; 
    public static final String A28 = "a28"; 
    public static final String A29 = "a29"; 
    public static final String A30 = "a30"; 
    public static final String A31 = "a31"; 
    public static final String A32 = "a32"; 
    public static final String A33 = "a33"; 
    public static final String A34 = "a34"; 
    public static final String A35 = "a35"; 
    public static final String A36 = "a36"; 
    public static final String A37 = "a37"; 
    public static final String A38 = "a38"; 
    public static final String A39 = "a39"; 
    public static final String A40 = "a40"; 
    public static final String A41 = "a41"; 
    public static final String A42 = "a42"; 
    public static final String A43 = "a43"; 
    public static final String A44 = "a44"; 
    public static final String A45 = "a45"; 
    public static final String A46 = "a46"; 
    public static final String A47 = "a47"; 
    public static final String A48 = "a48"; 
    public static final String A49 = "a49"; 
    public static final String A50 = "a50"; 
+0

你爲什麼不使用數組或列表? –

+0

當然你可以,想知道爲什麼你不使用它 – DGomez

+0

,因爲像A0和A1這樣的變量是靜態最終的,他們必須在數據庫類中單獨實例化。 – Kevik

回答

0
private static final String[] elems; 


static 
{ 
    elems = new String[table_elements]; 
    for(int i = 0; i < table_elements;i++) 
    { 
     elems[i] = "a"+i; 
    } 
} 
+0

爲什麼不? ,他問是否可以使用數組來初始化每個變量,並且答案顯示的是什麼 – DGomez

0

兩件事情。

1)

您可以在靜態塊中實例化這些,但你將無法通過成員屬性名稱來訪問它們。 I.E. FOO,BAR,ETC

static 
{ 
    for(int i = 0; i< NUM_ELEMENTS;i++) 
    { 
      ELEMENTS[i] = "string"+i; 
    } 
} 

2)

這實在太可怕了,如果你有上百個元素。此時您需要認真重新考慮您的架構。

相關問題