Практика JSON в Dart
Объявите класс BookCopy с полями
isbn и pages, добавьте
toJson. Создайте экземпляр с ISBN
"978-3" и 200 страницами,
получите JSON-строку и выведите ее.
Из JSON
{"isbn":"000-1","pages":64}
восстановите BookCopy и выведите
количество страниц.
Сделайте класс WeatherStamp:
в fromJson читайте скорость ветра
под ключом "wind_kmh" в поле
windKmh. Разберите
{"wind_kmh":12} и выведите число.
Опишите класс Room
с name и floor, затем
OfficeVisit с guest и полем
room. Запишите визит гостя "Eva"
в комнату "Lab" на этаже 2
и выведите JSON.
Объявите класс Playlist
с названием и списком треков. Разберите
{"title":"Focus","tracks":["a","b","c"]}
и выведите число треков.
Сделайте класс JobOffer
с role по умолчанию "intern"
и полем salary в fromJson.
Из {"salary":900}
получите объект и выведите роль и зарплату через
пробел.
Опишите sealed класс GateState:
Locked с sinceEpoch
(имя "locked") и Open
с passCount (имя "open").
Разберите
{"type":"open","passCount":4}
и выведите счетчик проходов.
Дан следующий код:
import 'dart:convert';
var nums = [1, 2, 3];
Запишите его в JSON и выведите получившуюся строку.
Дан следующий код:
import 'dart:convert';
var tags = ['x', 'y', 'z'];
Запишите его в JSON и выведите строку.
Дан следующий код:
import 'dart:convert';
var pairs = {
'x': 'a',
'y': 'b',
'z': 'c',
};
Запишите карту в JSON и выведите строку.
Дан следующий код:
import 'dart:convert';
var locales = {
'ru': ['1', '2', '3'],
'en': ['a', 'b', 'c'],
};
Запишите ее в JSON и выведите строку.
Разберите строку
["x","y","z"]
в список строк и выведите второй элемент.
Объявите класс GuestCard с полями
name и surn, затем
VisitPlace с полем user
типа GuestCard и полем city.
Разберите
{"user":{"name":"john","surn":"smit"},"city":"London"}
и выведите имя и город.
Разберите
{"list1":["value11","value12","value13"],"list2":["value21","value22","value23"]}
и выведите первый элемент второго списка.
Дан следующий код:
var broken = '{';
Разберите ее в список строк. Если разбор не удался, выведите текст ошибки так, чтобы программа не завершилась аварийно.