我被困在工作中有一个锁定PC。 但是我想练习我的斯卡拉。 我使用Ideone.com,因为我甚至不能安装scalac
...
反正这不是编译:
class DPt(var name: String, var x: Double, var y: Double){
def print = println("DPt; name: " + name + " x: " + x + " y: " + y)
}
object Main {
def main(args: Array[String]) {
val pt0 = new DPt("Joe", 1.0, 1.0)
println("checking generated accessor: " + pt0.x)
pt0 print
pt0.x_=(3.0)
pt0 print
}
}
我得到这个消息从Ideone.com Scala编译器回:
Main.scala:12: error: Unit does not take parameters
pt0 print
^
one error found
spoj: The program compiled successfully, but Main.class was not found.
Class Main should contain method: def main(args: Array[String]).
然而,当我加分号的语句,像这样的结尾:
class DPt(var name: String, var x: Double, var y: Double){
def print = println("DPt; name: " + name + " x: " + x + " y: " + y)
}
object Main {
def main(args: Array[String]) {
val pt0 = new DPt("Joe", 1.0, 1.0);
println("checking generated accessor: " + pt0.x);
pt0 print;
pt0.x_=(3.0);
pt0 print;
}
}
我发现Scala中缀和后缀符号是真棒 ,但我必须失去了一些东西。 为什么不斯卡拉考虑行的末尾是语句的结束?
在这个博客上第二张海报似乎有了答案。 斯卡拉的人应该就在这。 这样的烦恼....虽然这是对第一个恼人的这个我在这个本来美好的语言所遇到的。 http://www.scala-lang.org/node/4143
直接从文档的另一种解释: http://docs.scala-lang.org/style/method-invocation.html