-
scala – 播放JSON组合
所属栏目:[安全] 日期:2020-12-16 热度:56
在Play 2.1中,我们使用下面的东西,通过读取从 JSON获取生物对象. implicit val creatureReads = ( (__ "name").read[String] and (__ "isDead").read[Boolean] and (__ "weight").read[Float])(Creature.apply _) 在Scala中是相对新的,我试图明白是否[详细]
-
为什么Scala方法不是在Scaladocs中记录的?
所属栏目:[安全] 日期:2020-12-16 热度:136
我被告知 Scaladocs是 Scala API文档的最佳来源: http://www.scala-lang.org/api/current/index.html 我找到了一个使用scala.io.Source.fromURL(url).getLines的例子 该示例适用,但fromURL不在该网站.在哪里可以找到关于可用方法的更详尽的文件? 解决方法[详细]
-
如何在Scala中找到两个字符串中最长的公用前缀?
所属栏目:[安全] 日期:2020-12-16 热度:168
如何在 Scala中找到两个字符串中最长的公用前缀? 我可能会编写一个“命令式”的解决方案(索引i在s(i)== t(i))上运行,但是我正在寻找一个“功能性”的解决方案(没有明确更新索引变量,例如). 解决方法 scala "helloworld".zip("hellohell").takeWhile(Functio[详细]
-
案例案例遗传在Scala
所属栏目:[安全] 日期:2020-12-16 热度:194
我有一个抽象类,我扩展并制作了许多案例类.现在我想复制这些case类的实例,只是改变第一个参数,所以我使用case类’copy方法. 由于我必须为所有从普通抽象类中扩展的案例类执行此操作,而不是为所有这些类执行此操作,所以我尝试使其通用,并将抽象类作为案例类.[详细]
-
scala – 为什么这个擦除警告与成员变量声明为一个元组?
所属栏目:[安全] 日期:2020-12-16 热度:186
看看这个 Scala类: class Example { val (x,y): (Int,Int) = (1,2)} 编译会导致警告: Example.scala:2: warning: non variable type-argument Int in type pattern (Int,Int) is unchecked since it is eliminated by erasure val (x,2) ^ 删除显式类型注[详细]
-
在Scala中使用Streams进行迭代
所属栏目:[安全] 日期:2020-12-16 热度:163
SICP说,迭代过程(例如,牛顿法的平方根计算,“pi”计算等)可以用Stream来表示. 有人在Scala中使用流来模拟迭代吗? 解决方法 这里是产生pi的近似流的一种方式: val naturals = Stream.from(0) // 0,1,2,...val odds = naturals.map(_ * 2 + 1) // 1,3,5,...v[详细]
-
Scala编译器说不可达代码,为什么?
所属栏目:[安全] 日期:2020-12-16 热度:188
我是新来的 Scala …这是代码: def ack2(m: BigInt,n: BigInt): BigInt = { val z = BigInt(0) (m,n) match { case (z,_) = n+1 case (_,z) = ack2(m-1,1) // Compiler says unreachable code on the paren of ack2( case _ = ack2(m-1,ack2(m,n-1)) // Com[详细]
-
排序 – 如何在Scala中以字典顺序排列列表集合?
所属栏目:[安全] 日期:2020-12-16 热度:89
如果A有Ordered [A]特征,我希望能够有这样的代码 val collection: List[List[A]] = ... // construct a list of lists of Asval sorted = collection sort { _ _ } 并获得列表按字典顺序排序的内容.当然,只是因为A的特征有序[A]并不意味着List [A]具有Ordere[详细]
-
过滤Scala的并行集合,并在发现所需的结果数量时提前中止
所属栏目:[安全] 日期:2020-12-16 热度:104
给定一个非常大的collection.parallel.mutable.ParHashMap(或任何其他并行集合)的实例,一旦找到一个给定的,比如50个匹配项,怎么能中止过滤并行扫描? 尝试在线程安全的“外部”数据结构中累积中间匹配或保留具有结果计数的外部AtomicInteger在4个内核上的使[详细]
-
Scala模式匹配Java枚举值
所属栏目:[安全] 日期:2020-12-16 热度:192
我有我的 java枚举,如:FOO(“foo”),BAR(“bar”)… 我有一个getValue()方法来返回枚举的值“foo”和“bar”,这必须是 Java. 另一方面,我必须在Scala中匹配: result match { case "foo" = 我正在努力做: result match { case Enum.FOO.getValue() = 我得[详细]
-
解密最棘手的scala方法原型之一(光滑)
所属栏目:[安全] 日期:2020-12-16 热度:55
看着方法在下面的 scala slick类中,从 http://slick.typesafe.com/doc/2.1.0/api/index.html#scala.slick.lifted.ToShapedValue开始,它让我想起了 that iconic stackoverflow thread about scala prototypes. def [R,U](f: (U) ? R,g: (R) ? Option[U])(impl[详细]
-
scala – Map [String,Any]使用json4s压缩json字符串
所属栏目:[安全] 日期:2020-12-16 热度:99
我正在从不同的数据源提取一些指标,并将它们存储在Map [String,Any]类型的映射中,其中该键对应于度量名称,该值对应于度量值.我需要这个或多或少是通用的,这意味着值类型可以是原始类型或原始类型的列表. 我想将此地图序列化为JSON格式的字符串,因此我使用的[详细]
-
Scala:模仿和蛋糕模式
所属栏目:[安全] 日期:2020-12-16 热度:69
我一直在尝试采用蛋糕图案,但我遇到了适应这种编程风格的困难,特别是在单元测试方面. 假设我有以下业务对象: trait Vet { def vaccinate(pet: Pet)}trait PetStore { this: Vet = def sell(pet: Pet) { vaccinate(pet) // do some other stuff }} 现在,我想[详细]
-
scala – Play 2.0表单 – 字段“验证”方法不是会员
所属栏目:[安全] 日期:2020-12-16 热度:99
练习写在这里: ScalaForms,我创建了以下表单: val personCreationForm = Form( tuple ( "name" - nonEmptyText,"age" - number verifying (min(0),max(100)) /*ERROR*/ ) verifying ("Wrong entry",result = result match { case (name,age) = true }) )[详细]
-
嵌套的Scala匹配为什么Some(Some(1),1)无法匹配?
所属栏目:[安全] 日期:2020-12-16 热度:145
似乎嵌套匹配不起作用,这是一个奇怪的限制. 行为的一个例子如下: Some(Some(1),2) match { | case Some(Some(a),b) = a | case e = e | }console:9: error: wrong number of arguments for none: (x: (Some[Int],Int))Some[(Some[Int],Int)] case Some(Some[详细]
-
Scala:从元组列表构建一个Map,但如果存在矛盾的条目则会失败
所属栏目:[安全] 日期:2020-12-16 热度:130
我认为这可能是一种常见的操作.所以也许它在API内部,但我找不到它.如果没有,我也对有效的功能/简单解决方案感兴趣. 给定一系列元组(“a” – 1,“b” – 2,“c” – 3)我想把它变成一个映射.使用TraversableOnce.toMap很容易.但是,如果结果地图“将包含矛盾[详细]
-
Akka演员单元测试与Scala
所属栏目:[安全] 日期:2020-12-16 热度:66
我对 Scala很新,所以请温柔. 在我正在构建的应用程序中,我正在使用Akka演员,我想编写一些单元测试.我遇到这个official documentation for writing unit tests for Akka actors 但是我不明白它应该如何工作.尤其是, val actorRef = TestActorRef(new MyActor)[详细]
-
在Scala中,为什么getInstance无法使用GregorianCalendar?
所属栏目:[安全] 日期:2020-12-16 热度:71
java.util.GregorianCalendar.getInstance(); 在Java中工作 java.util.Calendar.getInstance(); 在Scala工作 java.util.GregorianCalendar.getInstance(); 在Scala中失败getInstance不是对象java.util.GregorianCalendar的成员 解决方法 在scala中没有静态,[详细]
-
scala中的`type`和“`关键字的调查
所属栏目:[安全] 日期:2020-12-16 热度:102
有人可以解释类型关键字和#操作符在 scala中的工作原理以及如何使用它? 请看例子. //Example1scala type t1 = Option.typedefined type alias t1//Shouldn't this work since previous example simply works?scala type t2 = String.typeconsole:7: error:[详细]
-
什么开发的迭代/管道库可用于Scala?
所属栏目:[安全] 日期:2020-12-16 热度:100
Scala是否有Haskell管道精神的图书馆,至少有 iteratee? 我首先发现了Play的迭代图书馆,但是我无法使其发挥作用,而且似乎与Play的并发原始Promise紧密相连,这在许多情况下可能是不合适的. Scalaz有一些迭代支持(如IterV),但似乎只有核心类没有额外的支持功能[详细]
-
Scala中的部分功能
所属栏目:[安全] 日期:2020-12-16 热度:120
我只想澄清一下 Scala中部分定义的函数.我看过文档,它表示部分函数的类型是PartialFunction [A,B],我可以定义一个部分函数,??如 val f: PartialFunction[Any,Int] = {...} 我想知道,对于A和B类,A是一个参数,而B是一个返回类型?如果我有多个接受的类型,是否[详细]
-
为什么在这个Scala代码中需要上传?
所属栏目:[安全] 日期:2020-12-16 热度:53
这编译: import scala.collection._trait Foo[A,+This : SortedSet[A] with SortedSetLike[A,This]]extends SortedSetLike[A,This] { this: This = def bar: This = (this: SortedSetLike[A,This]).empty} 但是如果upcast被删除,则无法编译: import scala.[详细]
-
Scala Array [String]到Java Collection [String]
所属栏目:[安全] 日期:2020-12-16 热度:188
我有一个 Scala数组的字符串: val names:Array[String] = something.map(...) 我需要调用一个接受Collection的Android(java)method public void addAll (Collection? extends T collection) 如何将Array隐藏到集合? 解决方法 Java方法: java.util.Arrays.[详细]
-
scala – 有什么优势来确定一个特征的def的val?
所属栏目:[安全] 日期:2020-12-16 热度:107
在 Scala中,val可以覆盖def,但def不能覆盖val. 那么,宣布一个特征是有优势的吗?喜欢这个: trait Resource { val id: String} 而不是这个 trait Resource { def id: String} 后续的问题是:编译程序在实践中如何处理调用vals和defs,并且它实际上与val做什么[详细]
-
Scala将元组列表转换为列表元组
所属栏目:[安全] 日期:2020-12-16 热度:117
如何将列表列表[(A,B)]转换为列表的列表(List [A],列表[B])? 我试图追随,但它看起来很粗糙,我希望有一个更好的方法来做到这一点 val flat: List[AnyRef] = aAndB.map{ x = x.map(y = List(y._1,y._2)) }.flatMap(x = x) val typeA: List[A] = flat.filter {[详细]