确定 JSON 源中是否存在值的更好方法

2022-09-01 00:17:29

我正在Android应用程序中使用(和解析器)来解析JSON源。确定返回的某个对象中是否存在属性的最佳方法是什么?org.json.JSONObject

假设我有一个包含“新闻”的 JSON 源。一些新闻有一个名为“UnpublishDate”的属性(这是相关新闻不再活跃的日期),而有些新闻没有这个属性。

我想出的最佳解决方案(尽管尚未实现)是简单地围绕有一个“try-catch”-you know还有更好的解决方案吗(当类扩展到JSON源中的几个“可选”属性时,它会更优雅)?theJSONObject.get("UnpublishDate")


答案 1

您可以使用以下函数:JSONObjecthas

if(myJSONObject.has("UnpublishDate")) {
    //it has it, do appropriate processing
}

答案 2