Итак, я изучаю 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.