从JSONObject读取值的更好方法

时间:2017-10-21 09:32:29

标签: java json performance

请告诉更好的方法来阅读JSONObject的价值:

// #1
String offerSubCategory = offeringJson.getJSONObject("offeringSubCategory").getString("code");  
// #2
String offerSubCategory = offeringJson.getJSONObject(Constants.offeringSubCategory).getString(Constants.code);

我需要阅读JSONObject,请您建议哪一个更好。

1 个答案:

答案 0 :(得分:1)

如果您的JSON解析代码在单个Java文件中很好地模块化,那么选项#1可能会提供更短的代码,并且可读性稍好一些。

但是,如果此代码分散在您的应用程序中,那么请务必使用选项#2。否则任何数据方案重构都可能是一场噩梦;)

<强>性能即可。这没关系。 Java编译器(非常可能)内联选项#2中的常量,导致与#1相同的字节码。

多个值。如果您真的打算从同一个JSONObject读取多个值,我建议您像这样分解代码:

JSONObject json = offeringJson.getJSONObject("offeringSubCategory");
String xxx = json.getString("xxx");
String yyy = json.getString("yyy");  
...
相关问题