В Java 10 появилось ключевое слово var
, похожее на C#, для локального вывода типа< /а>.
Но предоставляет ли Java 10 также ключевое слово val
, как в Scala< /а>?
val
будет работать как var
, но привязка будет final
.
var x = "Hello, world. ";
x = "abc"; // allowed
val y = "Hello, world. ";
y = "abc"; // forbidden
Если это не так, есть ли причина, по которой это так?
var
, иval
для одной и той же функции. - person AxelH   schedule 22.03.2018final var
- person Thilo   schedule 22.03.2018val
иvar
имеют разные значения, поэтому они не являются одной и той же функцией. - person sdgfsdh   schedule 22.03.2018String
иfinal String
для вас разные типы? - person AxelH   schedule 22.03.2018String
тогдаvar
будет эквивалентноString
, аval
будет эквивалентноfinal String
. Они связаны, но не одно и то же. - person sdgfsdh   schedule 22.03.2018val
. Вы можете использовать Kotlin в коде Java и наоборот. Вы можете найти пример используемого кода здесь, в котором используется ключевое словоval
. - person RRadley   schedule 27.12.2018