scala - 我可以在 Scala 中定义和使用类和对象之外的函数吗?

标签 scala functional-programming scala-2.10

我开始学习 Scala,我很有趣,我可以像在没有 OOP 概念的 Haskell 中那样在没有任何类或对象的情况下在 Scala 中定义和使用函数。我很感兴趣我可以在没有任何 OOP 概念的情况下完全使用 Scala 吗?
附言我为 Scala 使用 IntelliJ 插件

最佳答案

好吧,你真的不能这样做,但你可以通过使用 package objects 非常接近它。 :
src/main/scala/yourpackage/package.scala :

package object yourpackage {
  def function(x: Int) = x*x
}
src/main/scala/yourpackage/Other.scala :
package yourpackage

object Other {
  def main(args: Array[String]) {
    println(function(10));   // Prints 100
  }
}

注意 function用于Other object - 没有任何限定符。这里function属于一个包,而不是某个特定的对象/类。

关于scala - 我可以在 Scala 中定义和使用类和对象之外的函数吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18548814/

相关文章:

Scala Play 2.2 应用程序在 Heroku 中部署后崩溃 : target/start No such file or directory

scala - 更新不可变 AST 的最简单方法是什么?

Scala def歧义

scala - 在scala中使用map和reduce进行矢量积

scala - 需要以下 scala 片段的简单英文翻译

functional-programming - 解决脆弱模式匹配的建议

JavaScript:功能映射?

clojure - Clojure 中以撇号结尾的那些数学函数是什么?

java - 某些字符串使用基本字符比较的 sortWith 失败

scala - 寻找一个使用jackson和scala进行多态序列化反序列化的好例子