Scala REPL:错误:';'预期但找到字符串文字

Posted

技术标签:

【中文标题】Scala REPL:错误:\';\'预期但找到字符串文字【英文标题】:Scala REPL: error: ';' expected but string literal foundScala REPL:错误:';'预期但找到字符串文字 【发布时间】:2014-06-23 15:11:15 【问题描述】:

这本简单的教科书 REPL 有什么问题?

C:\Users\abc>scala
Welcome to Scala version 2.11.1 (Java HotSpot(TM) 64-Bit Server VM, Java 1.6.0_45).
Type in expressions to have them evaluated.
Type :help for more information.

scala> print "Hello"
<console>:1: error: ';' expected but string literal found.
       print "Hello"
             ^

scala>

这应该打印“Hello”

【问题讨论】:

【参考方案1】:

如果你问得好,它确实有效:

scala> object please 
     |   val print = Predef.print _
     | 
defined module please

scala> please print "Hello"
Hello

【讨论】:

这不是问题的答案。您刚刚通过添加额外的脚手架代码使其工作 为什么不直接Predef print "hello" 而不是声明please?无论如何,最好只使用括号。 @DaoWen 他绝对是在拖钓,但我还是笑了。【参考方案2】:

使用正确的语法:

scala> print("Hello")
Hello

【讨论】:

@Pangea 这取决于。 Sometimes, you can drop parenthesis, sometimes, you're not

以上是关于Scala REPL:错误:';'预期但找到字符串文字的主要内容,如果未能解决你的问题,请参考以下文章

有没有办法在 Windows 8.1 中安装 Scala Ammonite-REPL

如何在从 ensime 启动的 Scala REPL 中自动完成?

嵌入 scala 2.13.x REPL

疑难解答“TypeError:ord() 预期的长度为 1 的字符串,但找到了 int”

JSONDecoder - “预期解码 Dictionary<String, Any> 但找到了一个字符串/数据。”

Scala公共方法:';'预期但发现'def'