Gson是Google開發的一個用于Java對象和JSON數據之間的轉換庫。如果我們從后臺或網絡得到一個JSON字符串,我們可以使用Gson將其轉換為可操作的Java對象。
下面是一個簡單的Java類,我們將試圖將其轉化為JSON字符串。
public class Student { private String name; private int age; private String[] courses; public Student(String name, int age, String[] courses) { this.name = name; this.age = age; this.courses = courses; } }
我們需要先引入Gson庫,使用如下代碼進行轉化。
String jsonString = "{\"name\":\"Tom\",\"age\":18,\"courses\":[\"math\",\"english\"]}"; Gson gson = new Gson(); Student student = gson.fromJson(jsonString, Student.class);
這里的jsonString模擬了一個JSON字符串作為輸入。使用fromJson方法將JSON字符串轉化為Java對象,然后將其分別賦值給name、age和courses屬性。最后,你就可以像使用任何普通Java對象一樣使用該對象。
在Gson中,fromJson()方法有好幾個重載版本,我們可以根據輸入的數據類型來選擇使用不同的方法。在這個簡單的例子中,我們只將JSON字符串轉換為一個普通的Java對象,但我們也可以將其轉換為Java集合,例如ArrayList。
String jsonListString = "[{\"name\":\"Tom\",\"age\":18,\"courses\":[\"math\",\"english\"]},{\"name\":\"Lucy\",\"age\":19,\"courses\":[\"history\",\"science\"]}]"; Type listType = new TypeToken<List<Student>>(){}.getType(); List<Student> students = gson.fromJson(jsonListString, listType);
在這個例子中,我們使用了TypeToken類指定了List的類型。使用Gson,將JSON字符串轉換為Java對象或者集合只需要一兩行代碼,非常方便。希望本文能夠幫助你了解和使用Gson庫。