我想打印我使用 Map 字典類型創(chuàng)建的值首先,我有一個Enum類,然后我定義了另一個靜態(tài)(我以為當(dāng)對象初始化時,這將運行一次?),在這個靜態(tài)中,我將為每個枚舉創(chuàng)建字典。枚舉類:public enum myEnumValues{ testingFile1, testingFile2;// this part I thought it will automatically make the dictionary based on the put I have specified? Here I use 2 put with values "check1" and "check2"public static final Map<myEnumValues, String> var;static{ Map<myEnumValues, String> putting = new EnumMap<>(myEnumValues.class); putting.put(myEnumValues.testingFile1, "check1"); putting.put(myEnumValues.testingFile2, "check2"); var = Collections.unmodifiable(putting); }}我的測試類://Is there a way to print the dictionary value for both keys "testingFile1" and "testingFile2"? I think I understand it very wrong with my method. I am still learning Java.import folder.data.myEnumValues;@Test public void CheckTestForMyEnumValues(){ Map<myEnumValues, String> putting = new EnumMap<>(myEnumValues.class); System.out.println(putting.get(myEnumValues.testingFile1)); System.out.println(putting.get(myEnumValues.testingFile2));}我的預(yù)期結(jié)果應(yīng)該是:check1check2我創(chuàng)建這個枚舉字典類的目標(biāo):1) 我將創(chuàng)建另一個具有變量 a 的類。然后,它將進(jìn)行比較if (x == myEnumValues.testingFile1){ var a == myEnumValues.get(); // store the a with value for key "testingFile1".}else{ var a == null;}我的測試類主要是讓我獲得鍵的值,然后我會添加更多代碼,但現(xiàn)在我甚至無法用枚舉制作字典,我甚至無法知道字典是否被制作并調(diào)用每個枚舉的值。這就是我創(chuàng)建這個問題的原因。
2 回答

慕虎7371278
TA貢獻(xiàn)1802條經(jīng)驗 獲得超4個贊
使用您在塊中創(chuàng)建的地圖來訪問值。不要創(chuàng)建新地圖,因為新地圖不包含任何內(nèi)容。static
@Test public void CheckTestForMyEnumValues(){ System.out.println(var.get(myEnumValues.testingFile1)); System.out.println(var.get(myEnumValues.testingFile2)); }

撒科打諢
TA貢獻(xiàn)1934條經(jīng)驗 獲得超2個贊
您可以使用以下單行打印地圖中所有條目的鍵和值 (Java 8)
putting.forEach((k, v) -> System.out.println(String.format("Key: %s, value: %s", k, v)));
添加回答
舉報
0/150
提交
取消