下午好:我最近創(chuàng)建了一個(gè)特定的類“X”,其中包含單個(gè)屬性“網(wǎng)絡(luò)”,該屬性被定義為一個(gè)映射,該映射使用字符串作為鍵,另一個(gè)映射作為值(雙映射)。對(duì)于此類,將使用“hashmap”實(shí)現(xiàn)。該類看起來大約是這樣的:public class X { private Map<String, Map<String, Integer>> network; //Attribute public X() { network = new HashMap<>(); //An empty map is created } public int method1 { String string = "sentence"; int number = 2; String string2 = "another"; network.put(string, <string2, number>); //NOT WORKING - wrong syntax/wrong initialization? } }但是,當(dāng)我執(zhí)行函數(shù)中包含的 network.put 指令時(shí),編譯器會(huì)自動(dòng)檢測(cè)到錯(cuò)誤:“預(yù)期表達(dá)式”。如果可能的話,我想知道在向映射中添加新的鍵值元素時(shí)是否使用了錯(cuò)誤的語法,或者是否是映射的初始化導(dǎo)致了錯(cuò)誤。非常感謝所有幫助。謝謝。
1 回答

倚天杖
TA貢獻(xiàn)1828條經(jīng)驗(yàn) 獲得超3個(gè)贊
你需要做:
public class X {
private Map<String, Map<String, Integer>> network; //Attribute
public X() {
network = new HashMap<>(); //An empty map is created
}
public int method1() {
String string = "sentence"; int number = 2; String string2 = "another";
Map<String, Integer> map = new Hashmap<>();
map.put(string2, number);
network.put(string, map) ;
}
}
這個(gè)想法是創(chuàng)建并初始化一個(gè)新的 HashMap。然后將鍵和值對(duì)添加到其中。最后將地圖插入到封閉的地圖中。
添加回答
舉報(bào)
0/150
提交
取消