java中map的理解

tellysally 发布于 2017/11/02 16:33
阅读 176
收藏 0

Map<Integer,Boolean> map = new HashMap<Integer,Boolean>();
System.out.println(map);

 

java基础没学好,不懂map,输出的结果为什么是{}

加载中
0
tongcanghai
tongcanghai
map没有内容。map.put(1,true);再打印
tongcanghai
tongcanghai
回复 @tellysally : 刚刚new出来的map是没有默认值的
t
tellysally
put过后当然有内容,new对象后已经初始化了呀,没有默认值吗
0
battyman
battyman
代码说话:
    public String toString() {
        Iterator<Entry<K,V>> i = entrySet().iterator();
        if (! i.hasNext())
            return "{}";

        StringBuilder sb = new StringBuilder();
        sb.append('{');
        for (;;) {
            Entry<K,V> e = i.next();
            K key = e.getKey();
            V value = e.getValue();
            sb.append(key   == this ? "(this Map)" : key);
            sb.append('=');
            sb.append(value == this ? "(this Map)" : value);
            if (! i.hasNext())
                return sb.append('}').toString();
            sb.append(',').append(' ');
        }
    }

 

返回顶部
顶部