问题标签 [scala-java-interop]
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 - Scala - 对重载定义的模棱两可的引用 - 带有可变参数
java - 从 Java 调用带有参数和内部类的 scala 抽象类
如果我定义一个 Scala 类:
如何在 Java 代码中使用这个类?
[编辑] 实际上,我的问题稍微复杂一些
我有一个抽象类
我需要在 Java 代码中使用它。可以轻松做到吗?
[EDIT2] 考虑以下代码
在这种情况下,以下 java 代码在 Netbeans IDE 中给出错误但构建良好:
我得到的错误是:
Netbeans 6.8,斯卡拉 2.8。
截至目前,我认为唯一的解决方案是忽略 NB 错误。
这是一张显示我得到的确切错误的图像:
java - Scala 和 Java 的构建器库
我需要一个可以从 Scala 和 Java 调用的构建器库。在 Scala 中使用默认的命名参数很容易。但是我如何从 Java 中调用这段代码呢?见下文。或者也许我应该使用两种语言都更通用的流畅 API?
斯卡拉:
用法:
Java 用法:
java - Scala 和 Java 的类型安全构建器库
下面是 Scala 中类型安全、流畅的构建器模式,如http://www.tikalk.com/java/blog/type-safe-builder-scala-using-type-constraints中所述。它类似于Scala 和 Java 的 Builder Library,但专门处理编译时构建器检查。这怎么能从Java调用?在给定“scala.Predef$$eq$colon$eq”参数的情况下,是否可以使用适用于 Scala和Java 的干净 API 来完成?
scala - Scala:覆盖通用 Java 方法 II
在 Scala 中,我需要覆盖以下给定的 Java 类和方法:
我收到编译错误:
我不希望 Scala 编译器在调用时引用abstract
方法。super
另外,我希望它首先引用直接超类。
如何使 Scala 类编译?
谢谢!
编辑:
挂断super.test(clazz)
电话时,会出现以下错误消息:
好吧,当然这些是相同的类型(或变体)......!- 所以Scala / Java继承有问题......
感谢michid,有一个初步的解决方案:
虽然我们不能super
从这里打电话。
仍然是最受欢迎的。
java - 在 Java 中使用 Scala:将函数作为参数传递
考虑以下 Scala 代码:
现在在 Java 中,我希望MyScala
用作:
但是,上述方法不起作用(正如预期的那样,因为 Java 不允许函数式编程)。在 Java 中传递函数最简单的解决方法是什么?我想要一个适用于具有任意数量参数的函数的通用解决方案。
编辑:Java 8 的语法是否比下面讨论的经典解决方案更好?
scala - 在 scala 2.8 中使用 scala.collection.JavaConversions._ 时 scala 和 java 集合之间的自动转换
我有返回这种类型的java API:
在 scala 程序中,我需要将上述类型作为参数发送到类型为的 scala 函数“bar”
所以我称 bar 为:
但这不起作用,因为我得到编译错误。
我以为有这个进口
将在 Java 和 Scala 集合之间进行隐式自动转换。
我也尝试过使用:
但这也不起作用。
这个问题的解决方案是什么?
android - 在 Android 中使用来自 Scala 的 Java 常量
我在 Android 上使用 Scala 开发时遇到了一个奇怪的问题。我正在使用 sbt android 插件,现在我正在尝试让内容提供商工作,但是......
我需要获取列数组,我的做法与此处的教程完全一样:http: //developer.android.com/guide/topics/providers/content-providers.html
刚刚用 Scala 替换了 Java 的数组代码。它看起来像这样:
但是,scala 编译器返回错误
实际上它是这个对象的成员,它定义在接口 android.provider.Contacts.PeopleColumns 中(由 People 实现)。我也尝试过直接从 PeopleColumns 获取它,但没有任何成功(同样的错误)。在 Scala 中从 Java 获取常量是否有所不同,或者我只是在某个地方犯了一个愚蠢的错误?
更新:
下一个问题。使用 ContactsContract.Contacts 时错误保持不变,并且在尝试另一种方法时,我无法直接访问 ContactsContract.ContactsColumns,因为它是受保护的接口。
scala - 如何从 Scala 访问 Java 枚举?
我的java类如下
这是我的斯卡拉
我收到以下错误消息
对象 Test 中的类 TestEnum 无法在对象 Test 中访问受保护类 TestEnum 不允许访问,因为在包 XXX 中封闭类类 ScalaEnum 不是定义目标的包 YYY 中的对象 Test 的子类
scala - 如何在 Scala 中处理 Hashtable 空值?
我正在移植一些java代码并具有以下内容
当我尝试
我收到以下警告
警告:使用 `!=' 比较 Null 和 Double 类型的值将始终产生 true