问题标签 [scala-2.9]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
scala - 为什么案例类只扩展 Product 而不是 Product1、Product2、...、ProductN?
在我了解到案例类扩展了 Product 之后,我想知道为什么它们不扩展 ProductN。例如,给定如下代码:
我希望Foo(1).asInstanceOf[Product1[Int]]
能工作,但它没有(使用 Scala 2.9.1 检查,并由其他来源和Product
文档确认)。
我对此很感兴趣,因为我想声明如下类:
这样,一元操作的节点必须实现 Product1。如果只是一个带有一个参数的案例类就足够了,那就太好了。
scala - 从 scala 2.8.1 到 scala 2.9.1 的主要变化是什么?
我正在研究在 scala 2.8.1 中实现的项目,想要迁移到 scala 2.9.1 并使用 akka-actors 库而不是标准库,但没有找到主要更改的良好摘要,我发现了以下内容:
从 scala 2.8.1 到 scala 2.9.1 的主要变化是什么?
迁移需要付出巨大努力的变化。
更新 1:谢谢,@VonC - 注意:请记住,其中一些更改在即将到来的 2.8.2 中被反向移植:Scala 2.8.2 发行版
更新 2:在 scala 2.9.1 控制台中发现Set4 的奇怪行为
scala - scala 2.9.1 中 Set4 的奇怪行为?
从 2.8.1 迁移到 2.9.1 发现有趣的事情。试图在控制台中写这个:
它给:
我正在使用 Scala 版本 2.9.1.final(Java HotSpot(TM) Client VM,Java 1.6.0_26)。
Set3 和 Set2 类也会发生同样的事情。
这些是已知问题吗?
或者,也许,我做错了什么?
在 scala 2.8.1 控制台中它可以工作,并返回:
我必须将这些报告为错误吗?
scala - ParVector 地图未并行运行
我有一些代码,例如:
ParVector 大约有 12 个元素。我注意到我所有的工作都是在主线程中完成的,所以我追踪了堆栈跟踪,发现在下面的行(在下面的链接中),ifParallel 是假的(来自 CanBuildFrom)。关于为什么它是错误的任何提示,以及我能做些什么来帮助它?
scala - 从 trait 引用构造函数参数
在 Scala 中,特征是否可以引用它所混入的类的命名构造函数参数?下面的代码无法编译,因为 ModuleDao 的构造函数参数不是特征中定义的 val。如果我val
在构造函数参数之前添加以使其公开,它会与特征中的那个匹配并编译,但我不希望将其设置为val
.
scala - scala如何相交和匹配集合中的元素
我有两组对象,我想得到两组的交集。集合中的对象如下所示
在另一堂课中,我得到了用户集并希望看到交集。
上面的代码不起作用并打印
但是,如果我使用 foreach 手动遍历集合,我会得到想要的结果
上面的代码打印
这工作得很好
以上印刷品
集合操作 & &- 等是否仅适用于原始对象?我是否必须对我的用户对象做一些额外的事情才能使它起作用?
java - Scala 2.9 桥接法
我正在使用 Scala 2.9.1
我已经这样定义了一个 Logging 特征:
我有一个 JMSPublisher 类,它混合了 Logging 特征:
这一切都编译得很好。我的问题是我有一个用户想要将我的 JMSPublisher 加载到 Spring 中。他正在使用 Spring 2.5.6。
在启动期间加载 ApplicationContext 时,应用程序崩溃并出现 IllegalStateException,抱怨它找不到与我的 Logging 特征相关的桥接方法。
这段代码在 Scala-2.8 下工作,我听说 Scala 正在标记具有一些在 2.9 中桥接的方法的 trait。我认为这就是导致 Spring 失败的原因。如果 Spring 无法加载我的类,我将无法升级到 Scala-2.9。
有没有人遇到过这个问题?是否有任何修复或解决方法?
arrays - Scala 2.9.1 中需要数组[Nothing with java.lang.Object]
我有一个奇怪的编译错误。违规行是:
和错误:
根据 JavaDoc 的构造函数DefaultComboBoxModel
需要 an Object[]
,它可以是 aString[]
或 Java 中的任何数组类型,因为数组是协变的,但在 Scala 中它们不是,所以我们必须使用Array[Object]
,这应该不是问题。
为什么编译器期待Array[Nothing with java.lang.Object]
?我该如何解决?
这似乎是 Scala 2.9.1 版的新功能。我的应用程序过去一直在编译,直到几天前我安装了 2.9.1。一个令人困惑/令人担忧的事情是我没有更改 IntelliJ 中的项目编译器库版本,但不知何故它似乎正在使用它,也许是从我的 SCALA_HOME 环境变量中获取它?
scala - 在 sbt 项目的类路径中添加 tools.jar
scala 2.9.1 控制台中的':javap' 命令需要'classpath' 中的tools.jar(来自JDK6)。从 cmd-line 可以使用“-cp”参数或 CLASSPATH 环境变量来完成。
如何对使用“console”和“console-quick”命令从 SBT 调用的 scala 控制台执行相同操作?
scala - Scala Parallel Collections - 如何提前返回?
我有一个可能的输入值列表
我有一个很长的计算函数,它给了我一个结果
使用 scala 并行集合,我可以轻松做到
并行获取所有结果。问题是,我真的不想要所有的结果,我只想要第一个结果。一旦我的一个输入成功,我想要我的输出,并且想要继续我的生活。这做了很多额外的工作。
那么如何才能两全其美呢?我想要
- 获取从我的长函数返回的第一个结果
- 停止我所有其他线程的无用工作。
编辑- 我像一个愚蠢的Java程序员一样解决了它
这是在我的reallyLongFunction
. 这有效,但感觉不是很scala。想要一个更好的方法来做到这一点......