我刚开始使用Scala的,我想知道的语言功能,您可以做到这一点:

"PersistentQueue" should {
  "add and remove one item" in {
    withTempFolder {
      val q = new PersistentQueue(folderName, "work", Config.fromMap(Map.empty))
      q.setup

      q.length mustEqual 0
      q.totalItems mustEqual 0
      q.bytes mustEqual 0
      q.journalSize mustEqual 0

      q.add("hello kitty".getBytes)

      q.length mustEqual 1
      q.totalItems mustEqual 1
      q.bytes mustEqual 11
      q.journalSize mustEqual 32

      new String(q.remove.get.data) mustEqual "hello kitty"

      q.length mustEqual 0
      q.totalItems mustEqual 1
      q.bytes mustEqual 0
      q.journalSize mustEqual 33

      q.close
      dumpJournal("work") mustEqual "add(11:0:hello kitty), remove"
    }
  }
}

这是从单元测试隼

这是怎么回事?是否"PersistentQueue" should意味着斯卡拉string类已经扩展了“应该”的方法,或者是别的东西在这里发生的?我不得不在斯卡拉文档快速查看,但无法看到正在使用此代码示例的语言特点。

有帮助吗?

解决方案

它看起来像被添加到String类隐式方法我。 该帖子具有演示。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top