exceptions.scala
来自「JAVA 语言的函数式编程扩展」· SCALA 代码 · 共 54 行
SCALA
54 行
//############################################################################// Exceptions//############################################################################// $Id: exceptions.scala 9116 2006-11-02 08:46:39Z mihaylov $//############################################################################abstract class IntMap[A] { def lookup(key: Int): A = this match { case Empty() => error("KO") case _ => error("ok") }}case class Empty[A]() extends IntMap[A];object exceptions { def check(what: String, actual: Any, expected: Any): Unit = { val success: Boolean = actual == expected; Console.print(if (success) "ok" else "KO"); var value: String = if (actual == null) "null" else actual.toString(); if (value == "\u0000") value = "\\u0000"; Console.print(": " + what + " = " + value); if (!success) Console.print(" != " + expected); Console.println; Console.flush; } def test: Unit = { val key = 2000; val map: IntMap[String] = new Empty[String]; val value = try { map.lookup(key) } catch { case e => e.getMessage() } check("lookup(" + key + ")", value, "KO"); }}//############################################################################object Test { def main(args: Array[String]): Unit = { exceptions.test; }}//############################################################################
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?