Użyj Object#toString()
.
String string = map.toString();
To przecież też to, co System.out.println(object)
dzieje się pod maskami . Format map opisano w AbstractMap#toString()
.
Zwraca ciąg znaków reprezentujący tę mapę. Reprezentacja ciągu składa się z listy odwzorowań klucz-wartość w kolejności zwracanej przez entrySet
iterator widoku mapy , ujętej w nawiasy klamrowe („{}”). Sąsiednie odwzorowania są oddzielone znakami „,” (przecinek i spacja). Każde mapowanie klucz-wartość jest renderowane jako klucz, po którym następuje znak równości („=”), po którym następuje skojarzona z nim wartość. Klucze i wartości są konwertowane na ciągi jak przez String.valueOf(Object)
.
toString()
nie jest zadeklarowany w,Map
a gdyby tak było:Map
ma 21 klas implementujących. Który z nich powinien być preferowany nad innymi, gdy faktycznie używana implementacja jest znana tylko w czasie wykonywania?Możesz także użyć klasy Joiner kolekcji Google (guawa), jeśli chcesz dostosować format wydruku
źródło