问题标签 [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.

0 投票
4 回答
10875 浏览

scala - SBT 包括程序中的版本号

我希望我正在构建的程序能够在运行时报告它自己的版本(例如scala myprog.jar --version)。传统上,在 maven 项目中,我会使用资源过滤(pom.xml -> file.properties -> 在运行时读取值)。我知道有sbt-filter-plugin可以模拟此功能,但我很好奇在 SBT 中是否有更标准/首选/聪明的方式来执行此操作。

tl;博士如何读取build.sbt运行时定义的版本号?

0 投票
2 回答
3705 浏览

scala - Scala 列表理解

我正在尝试根据公式在 scala 中生成一个列表:

目前我有:

对于 end = 5,这将给出列表:

现在我一直在试图找到一种优雅的方式来让这个函数给出

任何建议将不胜感激。

-李

0 投票
4 回答
98 浏览

generics - 具有上限的内部类

我想创建一个带有 type 参数的泛型类T,然后创建一个包含 type 值的内部类的实例T。我认为如果我使用上限来判断它T必须是例如的子类型。String,我将能够创建用 . 初始化的内部类的实例String

但我收到以下错误:

实际上,出于我的目的,可以省略上限和 call new TestEntry(null),但编译器甚至不接受null

我错过了什么?

编辑:

让我重新解释一下我的例子,我需要这样的东西:我应该能够用任何特定的汽车测试抽象的豪华汽车服务,而无需重新实现测试方法。所以抽象类(或特征)和方法都应该适用于豪华汽车的子类。

0 投票
1 回答
335 浏览

java - 如何检测用户何时单击 scala 中制作的网络浏览器上的超链接

我正在 Scala 2.9 中制作一个简单的网络浏览器。这仅使用 HTML(没有 CSS、JavaScript 等)。我使用 EditorPane 显示网站。

谁能告诉我如何检测该页面上的超链接以及用户单击任何超链接并重定向到该页面的时间。我也在尝试使用 Java HyperlinkListener 来执行此操作,但我无法将 Hyperlinklistener 添加到 EditorPane。

0 投票
3 回答
1054 浏览

scala - 在 Scala 中修改大文件

我正在尝试在 Scala 中修改一个大的 PostScript 文件(有些大到 1GB)。该文件是一组批次,每个批次包含一个代码,代表批次号、页数等。

我需要:

  1. 在文件中搜索批处理代码(始终以文件中的同一行开头)
  2. 计算页数直到下一个批处理代码
  3. 修改批次代码以包括每个批次中有多少页。
  4. 将新文件保存在其他位置。

我当前的解决方案使用两个迭代器(iterAiterB),从Source.fromFile("file.ps").getLines. 第一个迭代器 ( iterA) 在 while 循环中遍历到批处理代码的开头(iterB.next每次也被调用)。iterB然后继续搜索直到下一个批处理代码(或文件末尾),计算它通过的页数。iterA然后,它会更新' 位置的批处理代码,并重复该过程。

这看起来非常不像 Scala,而且我还没有设计出一种将这些更改保存到新文件中的好方法。

什么是解决这个问题的好方法?我应该完全放弃迭代器吗?我宁愿这样做,而不必一次将整个输入或输出输入内存。

谢谢!

0 投票
3 回答
6654 浏览

scala - 如何使用 Scala 的 MurmurHash 实现:scala.util.MurmurHash3?

我正在编写一个 BloomFilter 并想使用 Scala 的默认 MurmurHash3 实现:scala.util.MurmurHash3。我的编译失败,但是出现以下编译错误:

我正在使用 Scala 2.9.1 和 sbt 0.11.2。

MurmurHash3 类是不是默认不在 2.9.1 库中?我认为是因为它在图书馆中被大量使用。据我所知,该课程不是包私有的。

0 投票
3 回答
200 浏览

scala - 在 Scala 中按类型进行通用收集

在 Scala 2.9.1 中

为什么这个表达式:

编译但收集 Some(A),但

工作正常。

如何从 Option[T] 推断 T?

0 投票
1 回答
1194 浏览

scala - Scala REPL 的选项卡补全在这里告诉我什么?

在阅读 Cay S. Horstmann 的“不耐烦的 Scala”时,我注意到第一章的第一个练习揭示了一些有趣的东西。

  1. 在 Scala REPL 中,键入 3. 后跟 Tab 键。可以应用哪些方法?

当我这样做时,我得到以下信息

但我注意到,如果我第二次点击 Tab,我会得到一个稍微不同的列表。

REPL 想在这里告诉我什么?第二次出现的不同方法有什么特别之处吗?

0 投票
1 回答
22291 浏览

scala - Scala Koans 中的 ===(三等号)运算符是什么?

我开始通过Scala Koans进行工作,它围绕一组单元测试组织,其中包含需要填写的空白。(这个想法是在类似的 Ruby Koans 项目之后建模的。)您启动 sbt 工具运行测试,它告诫:

...所以你去看看这个单元测试,它说:

...并且,在冥想之后,你意识到你应该像这样填写空白:

...然后它继续进行下一个单元测试。

不过,我的问题是,这个===运算符是什么?我似乎无法在任何地方找到它。这是 Scala Koans 项目本身定义的 DSL 运算符吗?还是它是 ScalaTest 框架的一部分?还是在Scala中?

0 投票
1 回答
3718 浏览

performance - 在scala for循环中倒计时

可能的重复:
在 Scala 中减少 for 循环?

在使用Scala For The Impatient时,我遇到了以下练习:

我很快就想出了以下解决方案:

然而,这让我想知道如何推断这样做的成本。reverse 方法是对 Range 进行 O(n) 遍历,还是用一些花哨的索引算术来装饰它?还有其他结构可以做得更好吗?