Возможный дубликат:
Объявление параметра Tuple и нечетность присваивания
В python я могу сделать
>>> (a,b) = (1,2)
>>> (b,a) = (a,b)
>>> (a,b)
(2, 1)
Но в scala:
Welcome to Scala version 2.8.1.final (OpenJDK Server VM, Java 1.6.0_20).
Type in expressions to have them evaluated.
Type :help for more information.
scala> var (a,b) = (1,2)
a: Int = 1
b: Int = 2
scala> (a,b)=(b,a)
<console>:1: error: ';' expected but '=' found.
(a,b)=(b,a)
^
Поэтому, хотя я могу инициализировать vars как кортеж, я не могу назначить их как кортеж. Любой способ обойти это, кроме использования tmp var?