禁止在scala工作表中显示结果

时间:2013-05-08 17:46:04

标签: scala worksheet scala-ide

我想在Scala工作表中禁止辅助变量的输出:

  val sqs = scen.rssis.toSeq.filter { case (ap,s) =>
    s.exists(e => e.epoch > 1) }.sortBy { -_._2.length }.take(10)
                                                  //> sqs  : 
                                                  // *snip* a lot of stuff I'd rather not have
                                                  //| Output exceeds cutoff limit.
  sqs foreach { case (api,s) =>
    println(f"${scen.aps(api).ssid}%-10s ${s.length}% 5d")
  }                                               //> 2WIRE230      74
                                                  //| 2WIRE736      74
                                                  //| Jamie56       73
                                                  //| VVHOA         69
                                                  //| 2WIRE059      68
                                                  //| Rainsnet      68
                                                  //| 2WIRE519      67
                                                  //| 2WIRE604      65
                                                  //| neo_vex_24    63
                                                  //| ALEMANIA7     63

有没有办法在Scala工作表中取消赋值的输出?

1 个答案:

答案 0 :(得分:6)

没有明确的方法来抑制输出。但是,您可以通过在外部(或嵌套)对象中移动辅助声明来轻松实现此目的。

例如,以下内容可以做到:

object worksheet {
  object helper {
    val sqs = scen.rssis.toSeq.filter { case (ap,s) =>
      s.exists(e => e.epoch > 1) }.sortBy { -_._2.length }.take(10)
  }

  helper.sqs foreach { case (api,s) =>
    println(f"${scen.aps(api).ssid}%-10s ${s.length}% 5d")
  } 
}