我们应该使用Generic Collection来提高安全性和性能吗?
当然.你为什么不呢?比IMO更重要的是,通用API更具表现力.这通常适用于通用API,而不仅仅是集合.
编辑:只是澄清这些:
由于"它们是不同的实现"以及整个通用/非通用方面的原因,通用和非通用集合之间的性能特征略有不同.显然,通用版本避免了装箱/拆箱和(在大多数使用情况下)获取时的执行时间.在实践中,这对于拳击发挥作用的价值类型来说可能很重要.对于大型集合,内存使用的差异可能比执行速度差异更大.
我对实际的类型安全方面稍微不那么烦恼了.这当然是一件好事,但我记不起在使用非通用集合时实际上看到了一个错误,因为它输入了错误的类型(或者将其作为错误的类型获取).这当然是一个好处.
我认为表达性非常重要.我可以看一下方法的声明并知道返回值会有什么期望 - 我不需要非常仔细地阅读文档,或者给变量提供非常笨拙的名称或文档.此外,您还可以获得Intellisense等的所有好处.关于语言的一个问题是"我能在其中表达什么?" 和泛型允许表达比以前更丰富的概念.