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 =()
Đây có phải là:Scala có cú pháp cho 0 và 1-tuple không?
val one = Tuple1(5)
thực sự là cách ngắn gọn nhất để viết một tuple singleton chữ trong Scala? Và không Unit
hoạt động như một bộ trống rỗng?
Có sự mâu thuẫn này làm phiền bất cứ ai khác?
Bạn cần ở đâu? –
Tôi không chắc chắn mình có thể nghĩ về một ngôn ngữ có '1' hoặc' 0' tuples (với bất kỳ hiệu ứng có thể sử dụng nào). Tôi cũng không thể nghĩ tại sao bạn muốn sử dụng chúng. 1-tuple là giá trị bạn đặt vào đó. ví dụ. trong Python, 'x = (5)' đánh giá thành '5'. Bạn không thể hoạt động trên các bộ dữ liệu như bạn làm với các danh sách - tức là 'x.head' hoặc' x.tail' vì một bộ gồm 5 ints là một _different type_ hơn một tuple có 4 int. –
Trong Python cú pháp cho một bộ kích cỡ là 'x = (5,)'. Dấu phẩy là cần thiết để loại bỏ sự mơ hồ khi 'x = (5)' thực sự đánh giá thành 'x = 5'. – Debilski