2010-10-13 17 views
88
Gson gson = new Gson(); 

Map<String,Object> map = new HashMap<String, Object>(); 
map.put("a", 1); 
map.put("b", null); 

System.out.println(gson.toJson(map)); //prints {"a":1} 

如何獲取它以包含所有條目?Gson忽略值爲null的映射條目

回答

215

http://sites.google.com/site/gson/gson-user-guide#TOC-Null-Object-Support

Gson gson = new GsonBuilder().serializeNulls().create(); 
+4

手冊應搜索更加優化。當我使用少量專長時,我不會閱讀所有內容。這是谷歌的第一個結果。解決了我的問題。 – 2015-03-18 08:53:24

+1

@MathijsSegers一些夢幻般的圖書館沒有文檔。通過他們的源代碼有很多麻煩(這又是很多構建器模式和所有)。 – pinkpanther 2015-07-28 17:17:04

+7

@MathijsSegers這就是SO和Google的美麗。我可以谷歌「gson忽略空」,並在3秒內找到這個答案,而不必找到手冊和答案。 – joshden 2016-05-20 13:51:42