使用JSONArray或普通数据存储/读取数据是否更有效?

时间:2013-01-17 16:48:05

标签: android arrays json arraylist

我正在使用连接到PHP/MySQL服务器的应用,以JSON格式从中返回所有内容。例如,用户列表将以JSONArray JSONObject的形式返回。每个对象包含单个用户的信息(名称,位置,电话号码等)。

使用此格式的信息更有效的方法是将所有内容保留为JSON格式,并且只根据需要从数组/对象中提取项目?或者,最好从JSONArray和所包含的对象中提取所有内容,以便首先构建常规ArrayArrayList

2 个答案:

答案 0 :(得分:3)

JSONArray内部使用ArrayList。它只是ArrayList的包装。所以我说没有区别。 JSONObject使用HashMap,因此没有真正的缺点。

答案 1 :(得分:0)

总之,JSON(可以被认为是JavaScript的一个子集)比XML更精简。这有几个积极的副作用

  • JSON小于相应的XML
  • JSON更快,即更简单的语法->更容易解析(更快的解析)

JSON是JavaScript的,我认为它是一个近亲。但是JSON是独立的,JSON.org在描述JSON方面做得很好。它还提供了JavaScript兼容性库,在浏览器不支持时添加了对JSON.parseJSON.stringify的支持。

虽然当时(2009年中)eval用于评估JavaScript,但它也可以评估JSON,即解析JSON,但它被认为是不安全的,因为它确实允许任意JavaScript执行。

JSON恰好非常适合浏览器,并且由于与JavaScript的密切关系,这是一种发展平台的自然方式。

虽然XML可能被认为具有更好的严谨性,因为你可以输入它,但也是那些使它慢得多的东西(在我看来它也有点冗长)。但如果这是你真正想要的东西,你应该使用它,XML同样无处不在。

我不会就动态或静态类型进行辩论,但我会这样说。在无模式数据的基础上添加内容非常容易,并且有很多方法可以进行验证,无论是模式还是没有模式。