Итак, я изучаю Scala, и я столкнулся с этой непростой проблемой...
Если у нас есть String
и мы хотим преобразовать его в Int
, все примеры, которые я нашел в Интернете, говорят: "Это так просто! Просто используйте String.toInt
!"
Итак:
var x = readLine().toInt
Прост достаточно. Я предполагаю, что toInt
является функцией String
. Но если это так, я должен был бы назвать toInt
круглыми скобками, верно? Исходя из Java, мне это кажется более естественным:
var x = readLine().toInt()
Но, увы! Scala дает мне следующую ошибку:
[error]/home/myhome/code/whatever/hello.scala:13: Int не принимает Параметры
[ошибка] var x = readLine(). toInt()
Любопытный. Что означает эта ошибка? Является toInt
не функцией String
? Аналогично, почему я могу сделать оба:
var x = readLine().toLowerCase()
var y = readLine().toLowerCase
без каких-либо проблем?
Изменить: Дублирующий вопрос не относится к проблеме toLowerCase
vs toInt
.