Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗jvSpJsWr 139 of 322 menu
◀ ▶

Запись в строку в Java

Запись в строку начинается с типа данных и экземпляра в памяти. Объект ObjectMapper по умолчанию собирает компактный JSON без лишних пробелов и переносов строк.

Описание доставки удобно хранить как record с идентификатором и весом посылки. Jackson сериализует компоненты record в ключи JSON:

import com.fasterxml.jackson.databind.ObjectMapper; public record Shipment(String id, double weightKg) {} public class Main { public static void main(String[] args) throws Exception { Shipment parcel = new Shipment("A-17", 2.5); ObjectMapper mapper = new ObjectMapper(); String text = mapper.writeValueAsString(parcel); System.out.println(text); } }

В выводе имена компонентов становятся ключами JSON, числа и строки записываются в формате, принятом для JSON. Тот же вызов можно применить к списку внутри типа или к вложенному record - правила задаёт объявление полей.

Иногда строку нужно собрать с отступами для чтения человеком. У ObjectMapper есть метод writerWithDefaultPrettyPrinter: результат разбивается на строки с вложенностью:

import com.fasterxml.jackson.databind.ObjectMapper; public record Shipment(String id, double weightKg) {} public class Main { public static void main(String[] args) throws Exception { Shipment parcel = new Shipment("B-02", 0.8); ObjectMapper mapper = new ObjectMapper(); String pretty = mapper .writerWithDefaultPrettyPrinter() .writeValueAsString(parcel); System.out.println(pretty); } }

Опишите record Ticket с компонентами code типа String и price типа int. Создайте билет с кодом "K7" и ценой 1200, запишите его в JSON-строку и выведите результат.

Для того же типа включите красивый вывод. Запишите билет с кодом "M1" и ценой 500 и выведите многострочный текст.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить