-
类型参数中的Scala类型级别标识函数
所属栏目:[安全] 日期:2020-12-16 热度:142
我可以声明一个抽象类型,如 type A[B] 并在子类中定义为 type A[B] = Option[B] 如果我想让A成为一个选项.如果我想让A成为B本身,我可以这样做: type A[B] = B 我可以使用类型参数而不是类型成员来实现相同的功能吗? 解决方法 尝试更高级的参数: class Foo[详细]
-
scala – Spray不会将我的case类转换为json并期望一个spray.http
所属栏目:[安全] 日期:2020-12-16 热度:160
我正在尝试重新发布 this或 this,但我一直收到错误,我无法修复… 首先,这是我的依赖项: compile 'io.spray:spray-can_2.11:1.3.1'compile 'io.spray:spray-routing_2.11:1.3.1',compile 'io.spray:spray-json_2.11:1.2.6' 现在我要做的是: class WHttpServ[详细]
-
函数“eventloop”在Scala Actors中的作用是什么?
所属栏目:[安全] 日期:2020-12-16 热度:116
函数eventloop在 Scala Actors中做了什么以及它有用的是什么? 解决方法 eventloop的工作方式类似于循环和反应组合. loop和eventloop之间的区别在于,循环实际上不会递归地调用正文(以防止基于线程的actor的堆栈溢出),而是调度处理(响应/接收)来自邮箱的下一[详细]
-
scala – Play Framework:文件上传 – 阻止还是非阻止?
所属栏目:[安全] 日期:2020-12-16 热度:132
给出Play文档中的示例代码: def upload = Action(parse.temporaryFile) { request = request.body.moveTo(new File("/tmp/picture/uploaded")) Ok("File uploaded")} 如何处理100个同时缓慢上传的请求(线程数)? 上传文件缓冲在内存中还是直接流式传输到磁[详细]
-
algorithm – Scala中的高效最近邻搜索
所属栏目:[安全] 日期:2020-12-16 热度:100
让这个坐标与欧几里德距离, case class coord(x: Double,y: Double) { def dist(c: coord) = Math.sqrt( Math.pow(x-c.x,2) + Math.pow(y-c.y,2) ) } 然后让一个坐标网格 val grid = (1 to 25).map {_ = coord(Math.random*5,Math.random*5) } 然后对于任何[详细]
-
scala – 是否有相当于Java Sound API的东西?
所属栏目:[安全] 日期:2020-12-16 热度:61
在 Java Sound API的Scala中是否存在等效的声音,或者我应该使用Java? 解决方法 我会去使用Java Sound Api.在撰写本文时(2011年10月) alternatives还不够成熟. 当与scala中的现有Java Api进行交互时,您会发现JavaConversions非常有用. 祝好运![详细]
-
scala要么模式匹配
所属栏目:[安全] 日期:2020-12-16 热度:183
这段代码有什么问题? (Left("aoeu")) match{case Right(x) = ; case Left(x) = } console:6: error: constructor cannot be instantiated to expected type; found : Right[A,B] required: Left[java.lang.String,Nothing] 为什么模式匹配器没有跳过右边并[详细]
-
Scala / Hadoop:为Reducer指定上下文
所属栏目:[安全] 日期:2020-12-16 热度:148
在我开始使用Scoobi或Scrunch之前,我想我会尝试使用Hadoop(0.20.1)的 java绑定将WordCount移植到scala(2.9.1). 最初,我有: class Map extends Mapper[LongWritable,Text,IntWritable] { @throws[classOf[IOException]] @throws[classOf[InterruptedExceptio[详细]
-
scala – 用Spray-json解析一个简单的数组
所属栏目:[安全] 日期:2020-12-16 热度:67
我正在尝试(并且失败)了解spray-json如何将json提要转换为对象.如果我有一个简单的密钥 – 值json feed然后它似乎工作正常,但我想要读取的数据来自这样的列表: [{ "name": "John","age": "30"},{ "name": "Tom","age": "25"}] 我的代码看起来像这样: packa[详细]
-
scala – 多次火花数据帧组
所属栏目:[安全] 日期:2020-12-16 热度:145
val df = (Seq((1,"a","10"),(1,"b","12"),"c","13"),(2,"14"),"11"),"12" ),(3,"r","11")). toDF("col1","col2","col3")) 所以我有一个包含3列的火花数据帧. 我的要求实际上是我需要执行两个级别的groupby,如下所述. 1级: 如果我在col1上进行groupby并做一[详细]
-
Scala递归类型别名错误
所属栏目:[安全] 日期:2020-12-16 热度:93
我有几个函数,其唯一的参数要求是它有一些也可以增长的集合(即它可以是Queue,List,PriorityQueue等),所以我试图创建以下类型别名: type Frontier = Growable[Node] with TraversableLike[Node,Frontier] 使用像这样的函数定义: def apply(frontier: Fronti[详细]
-
scala – 数据框架操作
所属栏目:[安全] 日期:2020-12-16 热度:152
我使用Spark 1.3的DataFrame API. 我希望从DataFrame中的日期获取星期几,而不会丢失DataFrame的所有元素. 在使用DataFrame API之前,我曾经使用jodatime将其放在简单的地图上. 现在有一个有效的解决方案: sqlContext.createDataFrame(myDataFrame.map(l=oper[详细]
-
scala – 使用Akka的Scheduler安排每秒运行一次的函数
所属栏目:[安全] 日期:2020-12-16 热度:84
我想每秒运行这个 Scala函数: object AuthTasker { def cleanTokens() { [...] }} Akka的Scheduler具有以下功能:schedule(initialDelay:FiniteDuration,interval:FiniteDuration)(f:?Unit) 我可以使用该函数每秒调用AuthTasker.cleanToken()吗? 解决方[详细]
-
斯卡拉 – 奇怪的东西与咖喱功能
所属栏目:[安全] 日期:2020-12-16 热度:88
我有这种奇怪的情况,我不明白.我正在阅读“ Scala编程”一书,Ch. 9. 假设我有一个curried函数: def withThis(n:Int)(op:Int=Unit){ println("Before") op(n); println("After")} 当我在一个特殊的卷曲语法中使用一个参数调用它时,它按预期工作: withThis(5[详细]
-
scala动态多维可变数组,如数据结构
所属栏目:[安全] 日期:2020-12-16 热度:75
有没有办法在 Scala中构建动态多维数组?我知道Scala中的数组必须按其大小和尺寸进行初始化,所以我不希望这样.数据结构应该是动态的.我尝试使用列表中的列表来构建它,但我在某种程度上迷失了自己. 有这么多不同的类型,也许我只是找不到合适的类型.所以请把我[详细]
-
scala – 为什么应用于2个函数的部分函数以2种不同的方式执行相
所属栏目:[安全] 日期:2020-12-16 热度:140
我可以定义以下两个函数: def add(a: Int,b: Int,c: Int) = a + b + c 这导致了 add: (a: Int,c: Int)Int 和 val add2 = (a: Int,c: Int) = a + b + c 这导致了 add2: (Int,Int,Int) = Int = function3 这两个函数完全相同,但以不同的方式定义,我不明白的是[详细]
-
scala – 使用SBT在损坏的项目中运行测试
所属栏目:[安全] 日期:2020-12-16 热度:148
在 Java Eclipse项目中进行严格的重构时,我经常会破坏构建,但是专注于一次传递一个测试.运行测试时,Eclipse会警告项目无法编译,但仍会运行可编译的测试. 现在我正在使用SBT,并希望通过’仅测试’实现相同的功能,但它尝试编译整个项目,失败,并且不运行测试.我[详细]
-
scala – 使用akka路由dsl获取http标头
所属栏目:[安全] 日期:2020-12-16 热度:79
我是 Scala的新手,这个问题让我感到沮丧.如何从请求中获取所有标头? val route = { path("lol") { //get httpHeaders complete(HttpResponse()) }} 解决方法 这里至少有两个选项: a)使用extractRequest指令: val route = { path("example") { extractRequ[详细]
-
scala – Akka(1节点产品/缺点):BalancingDispatcher即将被弃用
所属栏目:[安全] 日期:2020-12-16 热度:87
根据 “Effective Akka”平衡调度员即将被弃用.我将开始研究一些(单机)生产者/消费者代码,该代码处理截然不同形状的处理工作量.我该怎么用? 我希望生产者阻止(akka块或线程块,我不在乎)(similar to this question),因为它将从数据库游标中输入204,000个条目[详细]
-
从文件创建scala Reader
所属栏目:[安全] 日期:2020-12-16 热度:150
如何实例化 scala.util.parsing.input.Reader以从文件中读取? API提到了一些关于PagedSeq和 java.io.Reader的内容,但是根本不清楚如何实现这一点. 解决方法 您创建一个FileInputStream,将其传递给InputStreamReader并将其传递给StreamReader伴随对象的apply[详细]
-
在Scala中重载通用事件处理程序
所属栏目:[安全] 日期:2020-12-16 热度:109
如果我定义以下通用事件处理程序 trait Handles[E : Event] { def handle(event: E)} 事件类型是这样的 trait Event {}class InventoryItemDeactivated(val id: UUID) extends Event;class InventoryItemCreated(val id: UUID,val name: String) extends Eve[详细]
-
scala – 字符串插值转义引用PITA
所属栏目:[安全] 日期:2020-12-16 热度:157
它让我发疯,字符串插值有一些特殊的规则,不允许从b风格直接转换: // okdef test(f: java.io.File) = { val abs = f.getAbsoluteFile val isF = abs.isFile "select " + (if (isF) "file" else "folder") +""" + abs.getName +"" of folder"}// faildef te[详细]
-
覆盖Scala中重复的类参数?
所属栏目:[安全] 日期:2020-12-16 热度:72
Scala语言规范版本2.8的4.6.2节描述了重复的参数,并说: The last value parameter of a parameter section may be suffixed by “*”,e.g. (…,x:T*). The type of such a repeated parameter inside the method is then the sequence type scala.Seq[T].[详细]
-
在使用shadowJar和Scala依赖项时,如何修复丢失的conf文件?
所属栏目:[安全] 日期:2020-12-16 热度:179
为像我这样的未来问题的用户写这个.在Typesafe配置上构建的库通常使用自己的reference.conf文件并引用某些配置键.使用Gradle shadowJAR插件构建胖JAR时,不包括这些文件. 当胖JAR尝试运行时,Spray和Akka等依赖项会抛出错误.错误看起来像: Exception in threa[详细]
-
如何在给定Scala中的位置列表的情况下拆分字符串
所属栏目:[安全] 日期:2020-12-16 热度:78
你会如何编写一个用于split的函数实现(position:List [Int],str:String):List [String],它类似于splitAt,但是将给定的字符串拆分为给定的位置列表的字符串列表? 例如 split(List(1,2),“abc”)返回List(“a”,“b”,“c”) split(List(1),“bc”) split([详细]