为Map和FastMap实例分配null到Map之间的区别

时间:2013-06-20 12:54:01

标签: java collections

实际上,我只是想通过

读取图像属性/图像
 ImageTransform.getBufferedImage(path, locale)

并将返回值放在Map中,如下所示:

     1. Map<String, Object> imgBfr = null;
        imgBfr.putAll(ImageTransform.getBufferedImage(path, locale));

当我尝试上述内容时,我会遇到异常。但如果尝试以下方法,它就能完美运作。

     2. Map<String, Object> imgBfr = FastMap.newInstance();
        imgBfr.putAll(ImageTransform.getBufferedImage(objectInfo, locale));

有什么不同。任何人都可以给出上述两者之间的简短区别。

提前致谢。

1 个答案:

答案 0 :(得分:1)

您正在将参考设置为null

Map<String, Object> imgBfr = null;

所以你不能在这个上调用一个方法(你在null调用什么?)

在你的第二个场景中,你给自己一个新的地图实例:

Map<String, Object> imgBfr = FastMap.newInstance();

所以你有一个有效的(非空引用来调用。