Tag: 专业注释

为什么在Scala的标准库中专门有这么几件事?

我已经在Scala 2.8.1的标准库的源代码中search了@specialized的用法。 它看起来只有less数的特征和类使用这个注释: Function0 , Function1 , Function2 , Tuple1 , Tuple2 , Product1 , Product2 , AbstractFunction0 , AbstractFunction1 , AbstractFunction2 。 没有任何集合类是@specialized 。 为什么不? 这会产生太多类吗? 这意味着使用具有原始types的集合类是非常低效的,因为会有大量不必要的装箱和拆箱操作。 什么是最有效的方法来有一个不变的列表或序列(与IndexedSeq特性)的Int ,避免装箱和拆箱?