Шаг 135.
Язык программирования Java.
Библиотека Gson. Класс JsonElement

На этом шаге мы рассмотрим класс JsonElement

С этого шага начнем изучать работу с Json (кто не знаком что такое json, можно почитать тут). Чтобы работать с json в java было легко, разработчики Google разработали библиотеку Gson. Библиотека Gson не входит в состав стандартной библиотеки Java. Поэтому вы должны использовать Maven или Gradle проект для использования данной библиотеки.

Рассмотрим ее подробнее. Начнем рассматривать низкоуровневое API библиотеки, ключевым элементом которого является JsonElement. Это абстрактный класс с большим количеством функций. Ниже представлены 3 таблицы его функций. В таблице 1 представлены функции для проверки каким типом обладает текущий элемент. В таблице 2 представлены функции для преобразования текущего элемента к типу-обертки над каким то типом. В таблице 3 представлены функции для преобразования текущего элемента к определенному типу.

Таблица 1. Функции проверки принадлежности к типу
Функция Описание
boolean isJsonPrimitive() Функция возвращает true, если данный элемент является примитивным, и false в противном случае.
boolean isJsonObject() Функция возвращает true, если данный элемент является json объектом, и false в противном случае.
boolean isJsonArray() Функция возвращает true, если данный элемент является списком, и false в противном случае.
boolean isJsonNull() Функция возвращает true, если данный элемент указывает на null значение, и false в противном случае.

Таблица 2. Функции преобразования текущего значения к обертке над типом
Функция Описание
JsonPrimitive getAsJsonPrimitive() Возвращает объект типа JsonPrimitive (его мы рассмотрим позднее). Если данный элемент не примитивного типа, то будет брошено исключение. Поэтому мы рекомендуем использовать данную функцию только в сочетании с функцией isJsonPrimitive().
JsonObject getAsJsonObject() Возвращает объект типа JsonObject (его мы рассмотрим позднее). Если данный элемент не является объектом, то будет брошено исключение. Поэтому мы рекомендуем использовать данную функцию только в сочетании с функцией isJsonObject().
JsonArray getAsJsonArray() Возвращает объект типа JsonArray (его мы рассмотрим позднее). Если данный элемент не является списком, то будет брошено исключение. Поэтому мы рекомендуем использовать данную функцию только в сочетании с функцией isJsonArray().
JsonNull getAsJsonNull() Возвращает объект типа JsonNull. Данный тип представляет обертку над значением null. Если данный элемент не указывает на значение null, то будет брошено исключение. Поэтому мы рекомендуем использовать данную функцию только в сочетании с функцией isJsonNull().

Таблица 3. Функции преобразования значения к примитивным типам
Функция Описание
boolean getAsBoolean() Если данный элемент является примитивным, то данные функции вернут соответствующие значения. Тип значений указан в названии функции. Когда данный элемент не является примитивным значение, то будет брошено исключение. Исключением из правила является список из одного элемента. В этом случае результатом вызова данных функций будет значение этого элемента списка.
byte getAsByte()
short getAsShort()
int getAsInt()
long getAsLong()
Number getAsNumber()
float getAsFloat()
double getAsDouble()
char getAsCharacter()
String getAsString()

На следующем шаге мы рассмотрим класс JsonPrimitive

Предыдущий шаг Содержание Следующий шаг