小编Kev*_*ght的帖子

Scala集合如何能够从地图操作中返回正确的集合类型?

注意:这是一个常见问题解答,具体问我所以我可以自己回答,因为这个问题似乎经常出现,我想把它放在一个可以(希望)通过搜索很容易找到的地方

根据我在这里的回答评论提示


例如:

"abcde" map {_.toUpperCase} //returns a String
"abcde" map {_.toInt} // returns an IndexedSeq[Int]
BitSet(1,2,3,4) map {2*} // returns a BitSet
BitSet(1,2,3,4) map {_.toString} // returns a Set[String]
Run Code Online (Sandbox Code Playgroud)

查看scaladoc,所有这些都使用了map继承自的操作TraversableLike,那么为什么它始终能够返回最具体的有效集合呢?甚至String,它map通过隐式转换提供.

collections scala

60
推荐指数
2
解决办法
4125
查看次数

揭穿斯卡拉神话

关于Scala语言最常见的误解是什么,以及这些例子中存在哪些反例?

UPDATE

我正在考虑更多关于我见过的各种声明,例如"Scala是动态类型"和"Scala是一种脚本语言".

我接受"Scala是[简单/复杂]"可能被认为是一个神话,但它也是一个非常依赖于上下文的观点.我个人认为,这些功能可以使Scala显得简单或复杂,具体取决于谁使用它们.最终,语言只提供抽象,而这就是用来塑造感知的方式.

不仅如此,它还有一定的激烈争论的倾向,而且我还没有看到有人改变对该主题的强烈观点......

programming-languages scala

58
推荐指数
12
解决办法
5863
查看次数

配置在eclipse中运行Scala

我是Scala的初学者.我在eclipse中安装了Scala IDE,现在我想运行我的应用程序.它从未显示"以Scala应用程序运行",而是显示"作为Java应用程序运行"或"Java applet"

我打开"运行配置"并单击"Scala应用程序",我的项目名称为"test",第二列为"Class Main".我需要填写什么?我填写了"Main.Scala",但它声明"找不到mainmain class main.scala".

你能帮助我运行这个项目吗?

eclipse scala

58
推荐指数
5
解决办法
6万
查看次数

SBT到Maven转换器

由于大多数IDE只能导入Maven项目,我想从SBT托管项目生成POM.xml,有没有更好的方法呢?

scala maven sbt

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

将Java迁移到Scala

在将现有Java代码库逐步迁移到Scala时,需要注意哪些最重要的要点和解决方法?具有(可能非常长)的中间阶段,其中两种语言都在使用中.

我正在考虑的事情是:

  • 不同的集合层次结构
  • Scala无法很好地处理的Java构造
  • Scala构造在Java中使用是不切实际的
  • 构建工具
  • 编译顺序
  • 框架中的不变性支持
  • 等等

java migration scala scala-java-interop

28
推荐指数
3
解决办法
3454
查看次数

Scala 2.9将添加哪些新功能?

我知道并行集合将可用.

这些将采取什么形式,我们还有什么可能看到的?

scala scala-2.9

18
推荐指数
2
解决办法
2731
查看次数

使用Scala 2.8 Trunk构建目标Android

在android上使用Scala的权威参考资料似乎在这里:http://www.scala-lang.org/node/160

不幸的是,所有关于在Android上使用scala的引用都是基于Scala 2.7并且引用了一个自定义构建android-library.jar,其中有几个神秘的引用,暗示了android的更高版本不需要这个自定义构建(I' m使用2.1/API v7)

那么......在Android项目中使用Scala 2.8需要哪些步骤?最好使用eclipse和Google为该IDE提供的Android工具.

android scala scala-2.8

14
推荐指数
1
解决办法
1758
查看次数

Scala有可用的日期/时间API吗?

我正在寻找类似于Scoda的JodaTime或JSR 310的东西,它利用了很好的Scala功能,例如运算符重载,并且不依赖于隐式转换(我对隐式转换有一种非理性的恐惧).

我知道http://github.com/jorgeortiz85/scala-time,但它只是让JodaTime陷入困境.

datetime scala scala-2.8

11
推荐指数
1
解决办法
2875
查看次数

在Scala中已经建立了常见问题的常见模式/解决方案

我会开始滚球.

给定一系列元素,其中一些元素可以被多次包含,一个典型的要求是计算它们 - 以计数或直方图的形式.

经常引用的解决方案是:

ss.groupBy(identity).mapValues(_.size)
Run Code Online (Sandbox Code Playgroud)

那么Scala中常见的类似问题还存在哪些其他解决方案?

design-patterns scala idioms scala-2.8 scala-collections

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

Scala - 如何定义地图,其中值取决于密钥?

有没有办法定义一个Map,其中Map值取决于它的键,比如

Map(key -> f(key), key2 -> f(key2), ...).
Run Code Online (Sandbox Code Playgroud)

dictionary scala

7
推荐指数
2
解决办法
5474
查看次数