В чем разница между декларациями в scala?

Я объявил обе переменные двумя способами. Но вывод такой же, как «имя». Тогда в чем разница между обеими декларациями? Существуют ли различия в распределении памяти?

    var x="name"
    println(x)
    var y:String="name"
    println(y)

scala,

0

Ответов: 1


1

Нет никакой разницы в распределении памяти.

В случае, если 1 компилятор Scala вводит тип для вас

var x = "hello"

В случае 2 Вы явно объявляете тип руководства для компилятора

var x: String = "hello"

Явное объявление типа важно в некоторых случаях, когда тип вывода, выбранный компилятором, недостаточно хорош. Например

var a = 1

Компилятор выведет тип a как Int. Но если я хочу, чтобы AnyValв этом случае я должен сказатьvar a: AnyVal = 1

Скала,