小编Val*_*Dia的帖子

如何在Intellij中打开SBT工具窗口?

这个问题可能听起来很愚蠢,但我一直在互联网上搜索一段时间,却找不到答案.如何在Intellij中打开SBT工具窗口(显然安装了scala和SBT插件)?

scala intellij-idea sbt

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

Scala - 将列表列表转换为单个列表:列出[列表[A]]到列表[A]

在scala(2.9)中转换列表列表的最佳方法是什么?

我有一个清单:

List[List[A]]
Run Code Online (Sandbox Code Playgroud)

我要转换成

List[A]
Run Code Online (Sandbox Code Playgroud)

如何以递归方式实现?或者还有其他更好的方法吗?

recursion scala list flatten

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

从DynamoDB导出数据

是否可以以某种格式从DynamoDB表导出数据?

具体的用例是我想从我的生产dynamodb数据库导出数据并将该数据导入我的本地dynamodb实例,这样我的应用程序就可以使用本地数据副本而不是生产数据.

我使用link作为DynamoDB的本地实例.

amazon-web-services amazon-dynamodb amazon-dynamodb-local

22
推荐指数
5
解决办法
4万
查看次数

是否可以通过SSH连接到FARGATE manged容器实例?

我按照以下步骤使用连接到EC2容器实例,https: //docs.aws.amazon.com/AmazonECS/latest/developerguide/instance-connect.html想知道如何连接到FARGATE管理的容器实例.

ssh amazon-web-services aws-fargate

19
推荐指数
4
解决办法
1万
查看次数

使ScalaCheck测试确定性

我想暂时在我的specs2测试套件中进行ScalaCheck属性测试,以便于调试.现在,每次重新运行测试套件时都会生成不同的值,这会使调试变得令人沮丧,因为您不知道观察到的行为的变化是由代码更改引起的,还是仅仅是由生成的不同数据引起的.

我怎样才能做到这一点?是否有正式的方法来设置ScalaCheck使用的随机种子?

我正在使用sbt运行测试套件.

奖金的问题:是否有一个正式的方式打印出由ScalaCheck使用的随机种子,这样就可以重现即使是非确定性的试运行?

scala scalacheck specs2

16
推荐指数
1
解决办法
1451
查看次数

在scala中添加两个构成简单元素的元组

有没有一种简单的方法来添加包含Int,Doubles等可添加元素的元组?举些例子,

(1,2) + (1,3) = (2,5)
Run Code Online (Sandbox Code Playgroud)

scala tuples

12
推荐指数
2
解决办法
5800
查看次数

scalacheck:生成非空字符串

在类似这样的上下文中,生成非空字符串的最佳方法是什么

  private def createIndexFn() = {
      for{
        someChar <-  Gen.alphaString
        aNumber <- Gen.choose(1,100)
        //...
       }       
       yield { 
           MyThing(AnotherType(someChar.toString), SomeOtherType(aNumber), aNumber)
   }
 }
Run Code Online (Sandbox Code Playgroud)

你需要的地方也许someChar是一个非空字符串.我知道你可以whenever在这forAll部分使用,但我想知道如何在发电机的这一部分做.

谢谢

scala scalacheck

9
推荐指数
2
解决办法
1920
查看次数

Cats - 当范围内的Monad`实例时如何使用for -reherehe?

如何M在下面的方法中使用for-comprehension类型?

def foo[M[_]: Monad](m1: M[Int], m2: M[Int]) =
  for {
     a <- m1
     b <- m2
  } yield (a + b)
Run Code Online (Sandbox Code Playgroud)

我会得到一个

value flatMap is not a member of type parameter M[Int]
Run Code Online (Sandbox Code Playgroud)

我可以通过定义flatMapmap方法来使它工作:

implicit class MOps[A](m: M[A])(implicit monad: Monad[M]) {
  def flatMap[B](f: A => M[B]): M[B] = monad.flatMap(m)(f)
  def map[B](f: A => B): M[B]        = monad.map(m)(f)
}
Run Code Online (Sandbox Code Playgroud)

但是肯定有必要让Cats提供这些方法吗?

scala for-comprehension scala-cats

9
推荐指数
1
解决办法
1717
查看次数

Scala / Cats:如何解压缩NonEmptyList

标准库提供以下unzip方法List


scala>val l = List((1, "one"), (2, "two"), (3, "three"), (4, "four"), (5, "five"))

scala> l.unzip
// res13: (List[Int], List[String]) = (
//  List(1, 2, 3, 4, 5),
//  List("one", "two", "three", "four", "five")
//)

Run Code Online (Sandbox Code Playgroud)

有没有一种方法可以NonEmptyListcats库中实现相同目的:

scala> import cats.data.NonEmptyList

scala> val nel = NonEmptyList.of((1, "one"), (2, "two"), (3, "three"), (4, "four"), (5, "five"))
//res15: NonEmptyList[(Int, String)] = NonEmptyList(
//  (1, "one"),
//  List((2, "two"), (3, "three"), (4, "four"), (5, "five"))
//)
Run Code Online (Sandbox Code Playgroud)

scala scala-cats

9
推荐指数
2
解决办法
117
查看次数

为什么Scala构建自己的ForkJoinPool而不是使用java.util.concurrent.ForkJoinPool#commonPool?

Java和Scala都引入了自己的全局ForkJoinPool,Java为java.util.concurrent.ForkJoinPool#commonPool,Scala为scala.concurrent.ExecutionContext#global。这两个似乎都打算用于相同的用例,特别是运行非阻塞并发任务(通常是隐式地)。现在,根据我的理解,如果您以错误的方式选择了互操作性依赖项,您将最终得到两个线程池做完全相同的事情,一个用于Java世界,另一个用于Scala世界。

因此,除非我缺少明显的东西,否则Scala是否有充分的理由不将Java commonPool用作其全局ExecutionContext?

java scala threadpool

7
推荐指数
1
解决办法
202
查看次数