2014-06-23 59 views
0

例如,我需要一個名爲DynamicEntity的實體,其中我必須使用他們的setter和getter來定義UNKNOWN數量的變量。變量必須有,我想給他們一個名字,所以爲了這個,我得到了:Java - 在實體中定義未知數量的變量

主類:

public class Main { 
public static void main(String[] args) { 
    DynamicEntity dynamic = new DynamicEntity(); 

    dynamic.parseVariable("int"); 
} 
} 

而且DynamicEntity類:

Definetly的VARIABLENAME不會由於其已定義而被接受。

事情是,我不想IF中的變量被稱爲variableName,我想變量被稱爲內部的令牌[1]。

當然,創建setter和getters爲每個新變量添加,我不知道該怎麼做。

+0

使用'Map'代替。 – Jesper

回答

3

您可以從地圖結構中受益。作爲你的關鍵你把你的成員的名字和價值的價值。

概念的一個簡單的例子:

class Dynamic { 
    private final Map<String,Object> members = new HashMap<>(); 

    public void setMember(String name, Object value) { 
     members.put(name,value); 
    } 

    public Object getMember(String name) { 
    return members.get(name); 
    } 

}