Stack []和mutable.Stack []()之间的差异

时间:2017-10-03 18:04:03

标签: scala scalatest

如果我导入collection.mutable.Stack,我应该使用Stack[]还是mutable.Stack[](),这两者之间是否存在差异?

2 个答案:

答案 0 :(得分:2)

你不能同时做两件事。有两种可能的方法。

1。 导入scala.collection.mutable.stack

import scala.collection.mutable.Stack
val stack: Stack[Int] = new Stack[Int]

2。 导入scala.collection.mutable

import scala.collection.mutable
val stack: mutable.Stack[Int] = new mutable.Stack[Int]

在第一个示例中,您要导入scala.collecion.mutable.Stack。因此,您可以直接使用Stack对象及其功能。在第二个中,您要导入scala.collection.mutable。这样您就有资格使用mutable包的功能。您必须通过调用mutable.xxx来使用此包中的对象。

答案 1 :(得分:1)

如果您通常遵循功能原则尽可能使用不可变数据结构,我会<link rel="stylesheet" type="text/css" href="./css/style.css"> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script> <div class="row"> <div class="col-sm-12 col-lg-4 col-md-4" id="homeDiv1"> </div> <div class="col-sm-12 col-lg-4 col-md-4" id="homeDiv2"> </div> <div class="col-sm-12 col-lg-4 col-md-4" id="homeDiv3"> </div> </div>并使用import scala.collection.mutable来明确您在此特定情况下使用的是可变版本。 此约定也在scala documentation for collections

中描述