Scala. Заполните ArrayBuffer парами Double

Мне нужно некоторое руководство здесь, пожалуйста.

Что я имею:

import scala.collection.mutable.ArrayBuffer
var buffer = ArrayBuffer.empty[(Double, Double)]

и я хочу заполнить буфер парами. Я пытаюсь это, но это не работает:

for(someCycle){
    buffer += (someDouble, someOtherDouble)
}

Ошибка:

 error: type mismatch;
 found   : Double
 required: (Double, Double)
              buffer += (someDouble, otherDouble)

Я понимаю ошибку, но не могу понять правильный синтаксис.

заранее спасибо

1 ответ

Решение

Поскольку += это функция, компилятор выводит ее как:

buffer.+=(someDouble, someOtherDouble)

Думать, что вы пытаетесь передать два аргумента += вместо одного (сообщение об ошибке немного вводит в заблуждение).

Вам нужна дополнительная скобка:

buffer += ((someDouble, someOtherDouble))

Или в качестве альтернативы:

buffer += (someDouble -> someOtherDouble)
Другие вопросы по тегам