map转换数据格式的问题

现在有一个map集合,
图片说明
需要转换成以下格式:
001:张三
004:王一
005:李四

如果后面还有值,使用逗号隔开,如果后面没有值了不需要加逗号;

就这样的,今天头晕,求助,详细点,谢谢。

public class Test {

public static void main(String[] args) {
    HashMap<String, String> map = new HashMap<>();
    map.put("001", "张三");
    map.put("005", "李四");
    map.put("004", "王一");
    System.out.println(toString(map));

}

public static <K, V> String toString(Map<K, V> map) {
    StringBuilder sb = new StringBuilder();
    for (Map.Entry<K, V> entry : map.entrySet()) {
        sb.append(entry.getKey()).append(":").append(entry.getValue()).append("\n");
    }
    return sb.toString();
}

}

别用toString,用遍历的方式啊

public class Test {
@org.junit.Test
public void test() {
Map map = new HashMap();
map.put("001", "张三");
map.put("002", "李四");
map.put("003", "王五");

    map.keySet().stream().forEach(id -> System.out.println(String.format("%s:%s",id, map.get(id))));
}

}
这个够快