小编Set*_*sue的帖子

scalaTest in sbt:有没有办法在没有标签的情况下运行单个测试?

我知道可以通过在sbt中运行来运行单个测试

testOnly *class -- -n Tag
Run Code Online (Sandbox Code Playgroud)

有没有办法告诉sbt/scalatest在没有标签的情况下运行单个测试?例如:

testOnly *class -- -X 2
Run Code Online (Sandbox Code Playgroud)

这意味着"在课堂上进行第二次测试.无论是什么".我们有一堆测试,没有人费心去标记它们,所以有没有办法在没有标签的情况下运行单个测试?

testing sbt scalatest

135
推荐指数
5
解决办法
8万
查看次数

在CoffeeScript中,如何将值附加到数组?

在CoffeeScript中将值附加到数组的规定方法是什么?我检查了PragProg CoffeeScript书,但它只讨论了创建,切片和拼接,以及迭代,但没有附加.

arrays append coffeescript

96
推荐指数
2
解决办法
7万
查看次数

优雅的方式来反转Scala中的地图

学习Scala当前需要反转Map来进行一些反向值 - >键查找.我正在寻找一种简单的方法来做到这一点,但只提出:

(Map() ++ origMap.map(kvp=>(kvp._2->kvp._1)))
Run Code Online (Sandbox Code Playgroud)

有人有更优雅的方法吗?

scala scala-collections

95
推荐指数
5
解决办法
3万
查看次数

有人可以向我解释一下Shapeless库的用途吗?

有人能用简单的语言向我解释一下Shapeless库的用途吗?

Scala具有泛型和继承功能,所以我对Shapeless的用途有点困惑.

也许一个用例来澄清事情会有所帮助.

scala shapeless

70
推荐指数
3
解决办法
1万
查看次数

在Scala中,如何使用多个构造函数对Java类进行子类化?

假设我有一个带有多个构造函数的Java类:

class Base {
    Base(int arg1) {...};
    Base(String arg2) {...};
    Base(double arg3) {...};
}
Run Code Online (Sandbox Code Playgroud)

如何在Scala中扩展它并仍然提供对Base的所有三个构造函数的访问?在Scala中,子类只能调用其中一个超类的构造函数.我该如何解决这条规则?

假设Java类是我无法更改的遗留代码.

java constructor scala multiple-constructors

57
推荐指数
2
解决办法
9562
查看次数

除非方法是最终的,否则为什么Scala编译器不会应用尾调用优化?

除非方法是最终的,否则为什么Scala编译器不会应用尾调用优化?

例如,这个:

class C {
    @tailrec def fact(n: Int, result: Int): Int =
        if(n == 0)
            result
        else
            fact(n - 1, n * result)
}
Run Code Online (Sandbox Code Playgroud)

结果是

错误:无法优化@tailrec带注释的方法:它既不是私有的也不是最终的,因此可以被覆盖

如果编译器在这种情况下应用TCO,究竟会出现什么问题呢?

scala tail-recursion tail-call-optimization

45
推荐指数
3
解决办法
4172
查看次数

为什么Matz默认在Ruby中选择使Strings变为可变?

这与此问题相反:为什么字符串在Java和.NET中不可变?

这种选择是否仅仅因为操作(追加等)在可变字符串上有效,或者是否有其他原因而在Ruby中进行?

(如果它只是效率,那似乎很奇怪,因为Ruby的设计似乎不会高度重视促进有效的实施.)

ruby string language-design mutable immutability

43
推荐指数
2
解决办法
6224
查看次数

如何在Scala中创建和使用多维数组?

如何创建多个维度的数组?

例如,我想要一个整数或双矩阵,就像double[][]在Java中一样.

我知道Scala 2.8中的数组发生了变化,并且旧的数组已被弃用,但是现在有多种方法可以做到这一点,如果有的话,哪个最好?

arrays scala

39
推荐指数
2
解决办法
3万
查看次数

在Scala中打印数组

我对最基本的Scala操作有问题,这让我发疯.

val a = Array(1,2,3)

println(a)   and result is [I@1e76345

println(a.toString()) and result is [I@1e76345

println(a.toString) and result is [I@1e76345
Run Code Online (Sandbox Code Playgroud)

任何人都可以告诉我如何打印数组而不编写我自己的功能,因为那是愚蠢的.谢谢!

arrays scala

33
推荐指数
3
解决办法
4万
查看次数

使用.toSet设置的类型推断失败?

为什么类型推断失败?

scala> val xs = List(1, 2, 3, 3)
xs: List[Int] = List(1, 2, 3, 3)

scala> xs.toSet map(_*2)
<console>:9: error: missing parameter type for expanded function ((x$1) => x$1.$times(2))
       xs.toSet map(_*2)
Run Code Online (Sandbox Code Playgroud)

但是,如果xs.toSet已分配,则编译.

scala> xs.toSet
res42: scala.collection.immutable.Set[Int] = Set(1, 2, 3)

scala> res42 map (_*2)
res43: scala.collection.immutable.Set[Int] = Set(2, 4, 6)
Run Code Online (Sandbox Code Playgroud)

此外,走另一条路,转换为SetList,并映射List规定.

scala> Set(5, 6, 7)
res44: scala.collection.immutable.Set[Int] = Set(5, 6, 7)

scala> res44.toList map(_*2)
res45: List[Int] = List(10, 12, 14)
Run Code Online (Sandbox Code Playgroud)

scala type-inference

26
推荐指数
3
解决办法
1725
查看次数