scala> val two = (1,2)
two: (Int, Int) = (1,2)
scala> val one = (1,)
<console>:1: error: illegal start of simple expression
val one = (1,)
^
scala> val zero =()
zero: Unit =()
es la siguiente:¿Scala tiene sintaxis para 0 y 1 tuplas?
val one = Tuple1(5)
realmente la forma más concisa para escribir una tupla Singleton literal en Scala? ¿Y funciona Unit
como una tupla vacía?
¿Esta inconsistencia molesta a alguien más?
¿Dónde lo necesitan? –
No estoy seguro de que pueda pensar en un lenguaje que tenga tuplas '1' o' 0' (para cualquier efecto utilizable). Tampoco puedo pensar en por qué querrías usarlos. Una 1-tupla es el valor que le pones. p.ej. en Python, 'x = (5)' evalúa a '5'. No puede operar en tuplas como lo haría con las listas, es decir, 'x.head' o' x.tail' porque una tupla de 5 ints es un _different type_ que una tuple con 4 ints. –
En Python, la sintaxis para una tupla de tamaño uno es 'x = (5,)'. La coma es necesaria para eliminar la ambigüedad ya que 'x = (5)' de hecho evalúa a 'x = 5'. – Debilski