当前位置: 代码迷 >> J2SE >> 为啥不能直接new HashMap<key, value>().put(key, value)?
  详细解决方案

为啥不能直接new HashMap<key, value>().put(key, value)?

热度:613   发布时间:2016-04-23 22:20:19.0
为什么不能直接new HashMap<key, value>().put(key, value)???

Map<Long, Double> map = new HashMap<Long, Double>().put(11L, 22D);//compile error

Map<Long, Double> map = new HashMap<Long, Double>();
map.put(11L, 22D);//correct

提示:
Type mismatch: cannot convert from Double to Map<Long,Double>
怎么识别成Double去了

------解决方案--------------------
引用:
Java code

Map<Long, Double> map = new HashMap<Long, Double>().put(11L, 22D);//compile error

Map<Long, Double> map = new HashMap<Long, Double>();
map.put(11L, 22D);//correct


提示:
Type mismatch: c……


put方法返回值是Double,又怎么可能转为Map<Long, Double>?
编译报那么明显的错误,你还问?
  相关解决方案