是有型有保存價值如何存儲這個值
<string,string,int>
如果我使用Namedlist(SOLR)是,列出它可以實現嗎?如果是的話如何使用。
還有其他方法嗎?
例如:
<"A",America,code>
<"B",London,code>
我你爲什麼不創建這些數據類型的類撰寫需要這在java中
在此先感謝
是有型有保存價值如何存儲這個值
<string,string,int>
如果我使用Namedlist(SOLR)是,列出它可以實現嗎?如果是的話如何使用。
還有其他方法嗎?
例如:
<"A",America,code>
<"B",London,code>
我你爲什麼不創建這些數據類型的類撰寫需要這在java中
在此先感謝
。
例子:
class MyObject
{
int code;
String country;
String Flag;
// Getters and Setters goes here.
}
現在,我們可以在列表中使用這個類。
List<MyObject> list;
更好 - 提供一個構造函數來設置數據類型(而不是setter)並使它們成爲'final'。幾乎沒有理由讓這樣的小對象變得可變。 – 2011-06-10 09:57:36
你能說怎麼做..對不起..我是新來做這個..請提供一個示例示例...感謝所有 – 2011-06-10 10:19:35
可以請提供示例 – 2011-06-10 10:35:40
public class Triple<T1, T2, T3> {
private T1 o1;
private T2 o2;
private T3 o3;
public Triple(T1 o1, T2 o2, T3 o3) {
this.o1 = o1;
this.o2 = o2;
this.o3 = o3;
}
public void setO1(T1 o1) {
this.o1 = o1;
}
public T1 getO1() {
return o1;
}
public void setO2(T2 o2) {
this.o2 = o2;
}
public T2 getO2() {
return o2;
}
public void setO3(T3 o3) {
this.o3 = o3;
}
public T3 getO3() {
return o3;
}
}
例子:
List<Triple<String, Integer, String>> list
= new ArrayList<Triple<String, Integer, String>>();
list.add(new Triple("tr1", 1, "Triple 1"));
list.add(new Triple("tr2", 2, "Triple 2"));
list.add(new Triple("tr3", 3, "Triple 3"));
恕我直言,這取決於你如何使用它。例如,如果你總是會爲代碼,當你有國+標誌(反之亦然),這讓SENCE到組縣城+標誌:
Map<Map<String,String>,Integer> myMap...
我會寫這樣的:
public class App {
public static void main(String[] args) {
Map<String, Location> map = new HashMap<String, Location>();
map.put("B", City.London);
}
}
enum City implements Location {
London(262);
private int code;
private City(int code) {
this.code = code;
}
@Override
public int getCode() {
return code;
}
}
interface Location {
int getCode();
}
這允許通過主鍵進行搜索。並且使得像代碼鏈接到位置常量那樣不變。覆蓋界面將允許放置不同的枚舉常量/對象。
不,但你可以自己寫。 – mdm 2011-06-10 09:42:03