En este post te voy a explicar que es y como funciona el operador Cons (::) en Scala.
¿Qué es el operador Cons (::)?.
Cons es un operador específico de las listas (List[T]) que permite hacer prepend de un elemento a la colección. Esto significa que el elemento que agregas con el operador «::» a una lista pasara a ser la cabeza de la colección.
Prepend vs Append.
Cuando haces Append o agregas un elemento a una colección. Estás ejecutando una operación 0(N). La colección necesita iterar por todos los elementos, hasta llegar al elemento final, y justo ahí, agregar una nueva referencia del nuevo elemento.
En el caso de Prepend o «anteponer» un elemento en la colección, el coste computacional cambia. La colección solo necesita acceder al primer elemento (head) y crear una referencia nueva en ese lugar, sin necesidad de iterar la colección. El anterior elemento en la cabeza pasa a formar parte de la cola y el nuevo elemento es ahora la cabeza.
Contras de emplear: «::».
El operador Cons únicamente funciona con Listas, ningún otro tipo de colección como arreglos, pilas, colas, vectores, etc. lo soporta. Y adicional, no puedes hacer Append con este operador.
Ejemplo:
- NVL in SQL Server - 2023-11-01
- ¿Que es Cake Build? - 2023-02-22
- #How to fix error: MSB4019: The imported project «Microsoft.Data.Tools.Schema.SqlTasks.targets» was not found - 2023-02-20