Gson是Google公司發布的Java操作JSON數據的庫。它可以將JSON數據轉換成Java對象,也可以將Java對象轉換成JSON數據。Gson支持使用注解的方式對JSON數據進行解析,提高了解析的效率。
使用Gson解析JSON數據,需要定義對應的Java類,并使用注解標記每個字段的對應關系。例如,下面是一段JSON數據:
{ "name": "Tom", "age": 18, "gender": "male" }
對應的Java類可以定義如下:
public class Person { @SerializedName("name") private String mName; @SerializedName("age") private int mAge; @SerializedName("gender") private String mGender; // getters and setters }
其中,@SerializedName注解指定了JSON數據中每個字段對應Java類中的屬性名。例如,@SerializedName("name")表示JSON數據中的"name"字段對應Java類中的mName屬性。
使用Gson解析JSON數據時,只需要調用fromJson()方法即可:
Gson gson = new Gson(); Person person = gson.fromJson(jsonString, Person.class);
其中,jsonString是要解析的JSON數據字符串,Person.class是要轉換成的Java類。
使用Gson解析JSON數據時,還可以使用TypeToken類指定轉換成的數據類型,例如:
Type listType = new TypeToken<List<Person>>(){}.getType(); List<Person>personList = gson.fromJson(jsonString, listType);
這樣便可將JSON數組轉換成Java List。