草庐IT

java.lang.Boolean 到 scala.Boolean 的问题

georgii@gleontiev:~$scalaWelcometoScalaversion2.8.1.final(JavaHotSpot(TM)64-BitServerVM,Java1.6.0_24).Typeinexpressionstohavethemevaluated.Type:helpformoreinformation.scala>valjbool=java.lang.Boolean.TRUEjbool:java.lang.Boolean=truescala>valsbool=truesbool:Boolean=truescala>defsboolMethod(sbool:

java - 在 Java 中向 Actor 发送 PoisonPill

我开始通过将现有的JavaSE应用程序迁移到Akka来学习它。我正在使用Akka2.0.3。有一次我需要通过消息队列发送一个PoisonPill来停止actors。我的Actor是这样实例化的:ActorRefmyActor=actorSystem.actorOf(newProps(MyActor.class),"myActor");我尝试向其发送PoisonPill:myActor.tell(PoisonPill.getInstance());但我得到以下编译器错误:'tell(java.lang.Object)'in'akka.actor.ActorRef'cannotbeappl

java - 使用 Either 处理失败 -> 堆栈跟踪在哪里?

我从一些人那里听说,在Scala中,我们倾向于(像其他函数式语言一样)不破坏控制流......相反,按照惯例,我们在EitherLeft.但是我们如何从该异常中获取stracktrace呢?现在,我在左侧返回一个简单的Error案例类,其中包含代码、消息和原因(还有Error)。但如果我有错误,我无法获得堆栈跟踪。如果我的应用程序变得复杂,可能很难找到返回该Error的代码块...根本原因至关重要。那么我们在实践中做什么呢?我应该在Left中返回java类型Exception还是Throwable而不是自定义Error?在不丢失堆栈跟踪和原因等重要信息的情况下,Scala异常处理的最佳

java - 在 scala 项目中,编译器错误 - 无法解析符号列表?

我是Scala的新手。我在Ubuntu12.04上安装了java、sbt和scala:nazar_art@nazar-desctop:~$sbtsbt-version[warn]Alternativeprojectdirectory.sbt(/home/nazar_art/.sbt)hasbeendeprecatedsincesbt0.12.0.[warn]Pleaseusethestandardlocation:/home/nazar_art/project[info]Loadingprojectdefinitionfrom/home/nazar_art/.sbt[info]Setc

java - Akka 中的轻量级线程

我最近读到Quasar它为JVM提供“轻量级”/类似Go的“用户模式”线程(它也有一个Erlang启发的Actor系统,比如Akka但这不是主要问题)例如:packagejmodern;importco.paralleluniverse.fibers.Fiber;importco.paralleluniverse.strands.Strand;importco.paralleluniverse.strands.channels.Channel;importco.paralleluniverse.strands.channels.Channels;publicclassMain{publ

java - 在 Scala 中实现内部特征,就像我们在 Java 中实现内部接口(interface)一样

这段Java代码编译没有错误:interfaceT{interfaceQ{}}classCimplementsT.Q{}而Scala中的这段代码不会:traitT{traitQ{}}classCextendsT.Q{}Java代码list到Scala的正确翻译(如果存在)是什么?欢迎提供有关语言设计的理论解释。 最佳答案 内部类型Q仅为T的特定实例实现定义特征。由于scala具有路径相关类型,因此T的每个实例会有自己的子特征Q.scala>traitT{|traitQ|}definedtraitTscala>classCextend

java - 如何以正确的方式创建 Scala 项目?

我想在Scala中创建项目,具有适当的目录结构、测试目录等。我完全不熟悉Java,所以请告诉我该怎么做?我应该使用哪些工具(maven?)?如何放置测试并配置它们以查看我的项目类?我使用eclipse作为IDE。任何帮助-网络资源、链接我将不胜感激:) 最佳答案 大多数Scala程序员使用sbt,顺便说一下,这也是TypesafeStack的一部分要用它创建一个项目,请遵循GettingStartedGuide 关于java-如何以正确的方式创建Scala项目?,我们在StackOver

java - scala.concurrent.forkjoin.ForkJoinPool 与 java.util.concurrent.ForkJoinPool

为什么要为ScalaforkForkJoinPool?哪种实现方式和哪种情况更受欢迎? 最佳答案 scala库拥有自己的ForkJoinPool副本的明显原因是scala必须在1.7之前的JVM上运行,而ForkJoinPool仅在Java1.7中引入。此外,还针对内部(scala)使用进行了一些更改,例如:https://github.com/scala/scala/commit/76e9da2ca4c31daec2b04848c3c2dbad6ecd426e考虑到scala的版本可能不会给您带来任何优势(如果您针对java1.7

java - 单次迭代 => 从 Java 到 Scala 的多个输出集合

我目前正在尝试将一些Java代码转换为Scala代码。挑战在于确保与原始Java代码相比,转换后的Scala代码最终不会做一些非常低效的事情。例如尝试转换以下代码时:classPerson{Stringname;Integerage;Charactergender;}publicclassTestJava{publicstaticvoidmain(String[]args){finalListpersons=newArrayList();finalListmales=newArrayList();finalListaNames=newArrayList();finalListsenio

java - 哪些 Scala 语句或代码可以生成无法转换为 Java 的字节码?

我读过answer关于将Scala代码转换为Java代码的问题。它说:我认为不可能从Scala转换回标准Java,因为Scala会执行一些非常低级的字节码操作。我90%确定他们做的一些事情无法完全转换回正常的Java代码。那么什么Scala语句或代码可以生成无法转换为java的字节码?附言我大体上同意这个答案,但想要一个具体的例子以供学习之用。 最佳答案 答案实际上取决于您想要尝试转换代码的努力程度。由于Java和Scala都是图灵完备的,一个中的任何程序都可以轻松地转换为另一个,但这并不是很有趣或有用。您真正想要的是将结果转换为可