В настоящее время я пытаюсь научиться использовать Scala, но у меня возникли некоторые проблемы с синтаксисом.
Когда я набираю приглашение scala:
import scala.collection.immutable._
var q = Queue[Int](1)
println((q+1).toString)
Я получаю следующую ошибку:
<console>:12: error: type mismatch;
found : Int(1)
required: String
println((q+1).toString)
Я просто хотел использовать перегруженный оператор + очереди, определенный, как показано ниже:
def +[B >: A](elem : B) : Queue[B] Создает новую очередь с элементом, добавленным в конец старой очереди. Параметры elem - элемент для вставки
Но кажется, что scala выполняет конкатенацию строк. Итак, можете ли вы помочь мне понять, как добавить элемент в очередь (без использования enqueue, который отлично работает; я хотел бы использовать оператор +)? И, может быть, вы могли бы мне объяснить это поведение, которое кажется немного странным для новичка?
Спасибо