【问题标题】:Get method type in Scala sbt REPL在 Scala sbt REPL 中获取方法类型
【发布时间】:2013-03-29 20:17:31
【问题描述】:

SBT 中是否有显示 Scala 方法的数据类型的方法?

GHC (Haskell) 我们可以这样做:

:t something

SBT有类似的命令吗?

【问题讨论】:

    标签: scala sbt


    【解决方案1】:

    如果您使用_ 调用该方法,您将看到结果部分应用方法的参数和返回类型:

    scala> def helloWorld(i: Int): Option[Int] = { Some(i) }
    helloWorld: (i: Int)Option[Int]
    
    scala> helloWorld _
    res0: Int => Option[Int] = <function1>
    

    【讨论】:

    • 其实叫部分应用方法
    【解决方案2】:

    不,sbt 只是一个构建工具。但是,您可以在 scala REPL 中使用相同的命令 :t。您还可以使用 sbt 命令console 在当前环境中从 sbt 启动 scala REPL。正如 alexwriteshere 已经说过的,您必须部分应用方法来获取它们的类型。

    一些例子:

    scala> def foo(x: Int, y: Int): Int = x+y
    foo: (x: Int, y: Int)Int
    
    scala> :t foo _
    (Int, Int) => Int
    
    scala> :t 3
    Int
    
    scala> :t List(1,2,3)
    List[Int]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-04-26
      • 2015-08-14
      • 1970-01-01
      • 2020-03-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多