Я пытаюсь использовать (1,)
, но не работает, что такое синтаксис для определения Tuple1 в scala?Как определить Tuple1 в Scala?
scala> val a=(1,)
<console>:1: error: illegal start of simple expression
val a=(1,)
Я пытаюсь использовать (1,)
, но не работает, что такое синтаксис для определения Tuple1 в scala?Как определить Tuple1 в Scala?
scala> val a=(1,)
<console>:1: error: illegal start of simple expression
val a=(1,)
Для кортежа с мощностью 2 или больше, вы можете использовать круглые скобки, однако для с мощностью 1, вам нужно использовать Tuple1
:
scala> val tuple1 = Tuple1(1)
tuple1: (Int,) = (1,)
scala> val tuple2 = ('a', 1)
tuple2: (Char, Int) = (a,1)
scala> val tuple3 = ('a', 1, "name")
tuple3: (Char, Int, java.lang.String) = (a,1,name)
scala> tuple1._1
res0: Int = 1
scala> tuple2._2
res1: Int = 1
scala> tuple3._1
res2: Char = a
scala> tuple3._3
res3: String = name
Кортежа, по определению, упорядоченный список элементы. В то время как Tuple1
существует, я не видел, чтобы он использовался явно, поскольку вы обычно используете один элемент. Тем не менее, сахара нет, вам нужно использовать Tuple1(1)
.
Вы имеете в виду, вы хотите более удобный синтаксис, чем 'Tuple1 (1)'? – ymonad