Android JSON解析库Gson与Fastjson

Android 里的 JSON 解析,GsonFastjson可以说是老熟人了。前者是 Google 亲儿子,类型适配做得蛮细致,适合结构复杂点的对象。后者是阿里系,速度快、写法简单,性能方面确实挺能打。

Gson的优点就是“稳”,类型安全这块做得比较扎实,还能定制适配器,点特殊结构的数据也不费劲。比如要把一个Person对象转成 JSON 字符串,只需要几行:

import com.google.gson.Gson;
class Person {
  String name;
  int age;
}
Person person = new Person();
person.name = "John";
person.age = 30;
Gson gson = new Gson();
String json = gson.toJson(person);
Person deserializedPerson = gson.fromJson(json, Person.class);

Fastjson比较“爽快”,语法更贴近 Java 本身,写起来没那么多弯弯绕,反应也快。像下面这样就能搞定解析:

import com.alibaba.fastjson.JSON;
class Person {
  public String name;
  public int age;
}
Person person = new Person();
person.name = "John";
person.age = 30;
String json = JSON.toJSONString(person);
Person deserializedPerson = JSON.parseObject(json, Person.class);

选择哪个?如果你想定制得多一些、类型安全要求高,用 Gson 挺合适;如果追求速度或者项目里已经是阿里系,那 Fastjson 也完全 OK。嗯,两个库都不难上手,你可以根据项目需求随手切换,反正都挺省事的。

想深入点的可以看看下面这些相关文章,例子比较全:

如果你对 JSON 解析还不太熟,建议两个都试试,顺手的那个就是好用的那个。

zip 文件大小:539.55KB