我想要列表项应该用双引号。 我尝试过这样的:
List<String> langList = new ArrayList<>();
for (Language obj : language) {
langList.add(obj.getCode());
}
JSONObject where = new JSONObject();
try {
JSONObject languages = new JSONObject();
languages.put("$in", langList);
where.put("languages", languages);
} catch (JSONException e) {
e.printStackTrace();
}
langList
的结果是:"[en, ta, hi]"
我使用 langList.add("\"" + obj.getCode() + "\"");
为项目添加了双引号
现在,它返回的结果是:"[\"en\", \"ta\", \"hi\"]"
我也不想要外部双引号。
我期待的结果是:["en", "ta", "hi"]
最佳答案
在将它们添加到列表之前,我在两侧都添加了一个额外的“。PFB 代码 fragment 。
String array[] = new String[] {"en","ta", "hi"};
List<String> langList = new ArrayList<>();
for (String item : array) {
langList.add("\""+item+"\"");
}
System.out.println("langList: "+ langList);
try {
JSONArray jsonObject = new JSONArray(langList.toString());
System.out.println("jsonObject: "+jsonObject);
} catch (JSONException e) {
e.printStackTrace();
}
我可以在控制台中看到以下日志。
langList: ["en", "ta", "hi"]
jsonObject: ["en","ta","hi"]
希望这有帮助。
注意:上面的代码中使用了 org.json.JSONArray
和 org.json.JSONException
类。
关于java - 带双引号的列表项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51060141/