无法从哈希图和 gson 中获取正确的 json



我正在使用GSON和hashmap从pojo类中获取一些json。这是Pojo级

public class NetworkConfiguration {
@SerializedName("GUID")
@Expose
private String gUID;
@SerializedName("Name")
@Expose
private String name;
@SerializedName("Type")
@Expose
private String type;
@SerializedName("WiFi")
@Expose
private WiFi wiFi;
public NetworkConfiguration() {
}
public NetworkConfiguration(String gUID, String name, String type, WiFi wiFi) {
super();
this.gUID = gUID;
this.name = name;
this.type = type;
this.wiFi = wiFi;
}
public String getGUID() {
return gUID;
}
public void setGUID(String gUID) {
this.gUID = gUID;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
public WiFi getWiFi() {
return wiFi;
}
public void setWiFi(WiFi wiFi) {
this.wiFi = wiFi;
}
}

这就是我尝试获取JSON 的方式

WiFi wiFi = new WiFi();
wiFi.setPassphrase(open_network_configuration_wifi_password_edit.getText().toString());
wiFi.setSecurity(spinner_open_network_configuration_wifi_security.getSelectedItem().toString());
wiFi.setSSID(open_network_configuration_wifi_ssid_edit.getText().toString());
if (open_network_configuration_wifi_autoconnect_option.isChecked()) {
wiFi.setAutoConnect(true);
} else {
wiFi.setAutoConnect(false);
}
Map<String, Object> openNetworkConfigurationMap = new HashMap<>();
networkConfigurations.add(new NetworkConfiguration(open_network_configuration_guid_edit.getText().toString(),
open_network_configuration_name_edit.getText().toString(), "WiFi", wiFi));
Gson gson = new Gson();
String json = gson.toJson(networkConfigurations);
Map<String,Object> result = new Gson().fromJson(json, Map.class);
openNetworkConfigurationMap.put("NetworkConfigurations", json);

这就是我得到的

NetworkConfigurations= [{
"GUID": "a",
"Name": "Example A",
"Type": "WiFi",
"WiFi": {
"SSID": "Example A",
"Security": "None",
"AutoConnect": true
}
}]

这是错误的。这就是我所期望的

"NetworkConfigurations": [{
"GUID": "a",
"Name": "Example A",
"Type": "WiFi",
"WiFi": {
"SSID": "Example A",
"Security": "None",
"AutoConnect": true
}
}]

主要的是有点担心我得到了一个等号=,但它应该是NetworkConfigurations之后的:任何形式的帮助都将不胜感激。提前感谢

只需将其添加到最后:

String json = gson.toJson(openNetworkConfigurationMap);

并打印输出json