2012-04-08 8 views

Respuesta

4

De acuerdo con la API, esto no parece ser posible. Una explicación es que las colecciones mutables se desaconsejan enérgicamente, y las colecciones inmutables no necesitan la información de capacidad predeterminada ya que se debe conocer el número de elementos en el momento de la construcción.

Sin embargo, tenga en cuenta que Scala utilizará implícitamente la información de capacidad predeterminada si construye una colección (incluidos mutable e inmutable HashMap) a través de los muchos métodos de recopilación disponibles. Por ejemplo, si llama al map en un HashMap, usará map definido en TraversableLike (se reproduce a continuación), y puede ver que proporciona una "sugerencia de tamaño" para el constructor que proporciona esa información de capacidad.

def map[B, That](f: A => B)(implicit bf: CanBuildFrom[Repr, B, That]): That = { 
    val b = bf(repr) 
    b.sizeHint(this) 
    for (x <- this) b += f(x) 
    b.result 
} 
+1

Gracias .. pero mi obligación era convenientemente indicado para un java como HashMap donde puedo especificar el loadfactor etc., a la creación (He posteriormente modificado mi algoritmo para un estilo más funcional .. pero yo estaba interesado en una equivalente directo no menos :) .. Aceptando la respuesta de todos modos –

Cuestiones relacionadas