Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
не так уж и много вариантов имеется. Всеми заброшенный jinterface и новая библиотека encon
{ok, <<"Result">>} или {ok, "Result"}#{key => value}#{"key" => <<"value">>}Там на сайте есть новая статья, в которой есть раздел с маппингом Java2Erlang. Но не написано что есть ещё класс со статическими хелп-функциями — Erlang
Конкретно твои примеры выглядят так:
import static io.appulse.encon.terms.Erlang.atom;
import static io.appulse.encon.terms.Erlang.bstring;
import static io.appulse.encon.terms.Erlang.map;
import static io.appulse.encon.terms.Erlang.string;
import static io.appulse.encon.terms.Erlang.tuple;
import io.appulse.encon.terms.ErlangTerm;
// {ok, <<"Result">>}
ErlangTerm message1 = tuple(atom("ok"), bstring("Result"));
// {ok, "Result"}
ErlangTerm message2 = tuple(atom("ok"), string("Result"));
// #{key => value}
ErlangTerm message3 = map(atom("key"), atom("value"));
// #{"key" => <<"value">>}
ErlangTerm message4 = map(string("key"), bstring("value"));С мапами, как в Guava хелпер был — они идут vararg массивом, нечётный элемент — ключ, чётный — значение (что и видно в примере выше).
Никто не мешает через конструктор всё создать, но на мой вкус тут статические функции лаконичнее выглядят.
Из Erlang/Elixir в Java и обратно. Приключение на 20 минут