草庐IT

scala-cats

全部标签

java - 在 Java 中实现 Scala PartialFunction 的最简单方法是什么?

为了互操作性,我需要从Java代码传递一个ScalaPartialFunction。对于Function(Function1等),我可以使用匿名类型对AbstractFunction进行子类化,但是对PartialFunction执行相同操作的最简单方法是什么?在这种情况下,我很乐意让它成为Java中的一个“完整”函数,为所有值定义,但类型为PartialFunction。 最佳答案 我在这里要做的是在一些公共(public)库(不支持scala)中提供一个Java接口(interface)://thisisJava-intheJa

java - 我应该将 ArrayList 声明/初始化为列表、ArrayList 还是 <Cat> 的 ArrayList

这样声明一个集合有什么区别publicclassCatHerder{privateListcats;publicCatHerder(){this.cats=newArrayList();}}//orpublicclassCatHerder{privateArrayListcats;publicCatHerder(){this.cats=newArrayList();}}//orpublicclassCatHerder{privateArrayListcats;publicCatHerder(){this.cats=newArrayList();}} 最佳答案

java - Scala 对象在 Java 中的等价物是什么?

在Scala中,我们可以这样写objectFoo{defbar={}}编译器是如何实现的?我可以从Java调用Foo.bar();但是来自Java的newFoo();给出错误cannotfindsymbolsymbol:constructorFoo()JVM本身是否支持单例?是否可以在Java中创建一个没有构造函数的类?注意:这里是scalac-print输出的代码package{finalclassFooextendsjava.lang.ObjectwithScalaObject{defbar():Unit=();defthis():objectFoo={Foo.super.this

java - Scala 并行集合在某些方面是否比 Java 中已有的并行集合更好?

我最近一直在学习Java中用于并发的各种库,例如ConcurrentHashMap和来自CliffClick的可爱的非阻塞式我对Scala了解不多,但我听说过有关最近的并行集合库的好消息。我想知道这个库相对于基于Java的库有哪些主要优势? 最佳答案 这两个集合用于不同的用途。Java的并发集合允许您在并行上下文中使用它们:许多线程可以同时访问它们,并且集合一定会做正确的事情(因此调用者不必担心锁等问题)。相比之下,Scala的并行集合旨在对自身运行高阶操作,而您不必担心创建线程。所以你可以这样写:myData.par.filter

java - 在 Scala 和第三方 Java 库中使用 Akka 的最佳实践

我需要使用memcachedJavaAPI在我的Scala/Akka代码中。此API为您提供同步和异步方法。异步的返回java.util.concurrent.Future.这里有一个关于在Scala中处理JavaFutures的问题HowdoIwrapajava.util.concurrent.FutureinanAkkaFuture?.但是就我而言,我有两个选择:将来使用同步API和包装阻塞代码并标记阻塞:Future{blocking{cache.get(key)//synchronousblockingcall}}使用异步JavaAPI并每隔n毫秒对JavaFuture进行一次

java - Scala IDE (Eclipse) 作为 Scala 应用程序运行

我对scala语言(和一般编程)还比较陌生。我最近安装了JDK和ScalaIDE(用于eclipse)。设置进行得很顺利,但我在尝试运行HelloWorld应用程序时遇到了问题。当我尝试“运行方式”时,唯一可用的选项是“JavaApplet”和“Java应用程序”。我如何继续尝试作为“Scala应用程序”运行?非常感谢! 最佳答案 右键单击具有main方法的Scala对象选择运行方式->运行配置在RunConfigurations窗口中双击ScalaApplication在MainClass中键入对象名称:(例如:如果HelloWo

java - 从 Java 访问 Scala 嵌套类

假设我们在Scala中有以下类结构。objectFoo{classBar}我们可以使用newFoo.Bar()在Java中轻松构造Bar。但是当我们添加额外级别的嵌套类时,一切都会改变。objectFoo{objectBar{classBaz}}不知何故,在Java中不再可能构造最内部类Baz。查看javap输出,我看不出第一种情况(2级)和第二种情况(3级)之间有任何显着差异。生成的代码对我来说看起来很合理。2个级别:publicclassFoo$Bar{...}3个级别publicclassFoo$Bar$Baz{...}话虽如此,从Java访问时,2级和3级嵌套Scala类之间有

java - Spark 的 scala 与 java?

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭6年前。Improvethisquestion有人能帮我理解为什么人们在Java上使用scala来开发spark吗?我一直在研究,但未能找到可靠的答案,我知道两者都运行良好,因为它们都在JVM上运行,而且我知道scalaus函数式和OOP语言。谢谢

java - 从 Java 可见的 Scala 中的包私有(private)范围

当从Scala代码生成的字节码用于Java代码时,我刚刚发现Scala作用域的一个非常奇怪的行为。考虑以下使用Spark(Spark1.4、Hadoop2.6)的代码片段:importjava.util.Arrays;importjava.util.List;importorg.apache.spark.SparkConf;importorg.apache.spark.api.java.JavaSparkContext;importorg.apache.spark.broadcast.Broadcast;publicclassTest{publicstaticvoidmain(Stri

java - 除了语言选择(Scala vs Java)之外,Akka 和 Netty 之间还有什么区别?

关闭。这个问题需要更多focused.它目前不接受答案。想改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭8年前。Improvethisquestion想了解一下Akka和Netty的区别。我知道您可以同时使用Scala和Java。我更想知道Netty在哪里更好(如果有的话)以及Akka在哪​​里更好(如果有的话)。它们在哪里重叠,换句话说,在哪些方面我可以使用Akka而不是Netty,反之亦然。