Hashmap强制转换哪个更好

时间:2014-04-08 08:57:31

标签: java collections hashmap

我们应该以哪种方式进行第一或第二次投射以及为什么?

第一种方式----------

Map mapDestinationSession=(HashMap)SessionUtils.getNamespacedAttribute(session, "mapDestinationSession", null); 
第二种方式---------

Map mapDestinationSession=(Map)SessionUtils.getNamespacedAttribute(session, "mapDestinationSession", null);  

2 个答案:

答案 0 :(得分:4)

我会选择第二种选择。您可以将Map的类型更改为LinkedHashMapConcurrentHashMapTreeMapAbstractMap。使用第二种解决方案,您的更改不需要进一步更改代码。使用第一个选项,因为您转换为具体实现,您将需要更新代码。

答案 1 :(得分:0)

第二个更好(你不需要知道Map的实现是什么)。