如何在Java代码中使用scala.collection.immutable.List

Shaunak:

我需要编写一个代码来比较Java ArrayList和Scala的性能List我很难List在我的Java代码中使用Scala 有人可以发布一个真正简单的“ hello world”示例,该示例如何使用ListJava代码(在.java文件中)创建Scala 并在其中添加100个随机数吗?

PS:我非常擅长Java,但从未使用过Scala。

Nate Nystrom:

与其他方式相比,在Scala中使用Java集合要容易得多,但是由于您提出了以下要求:

import scala.collection.immutable.*;

public class foo {
  public List test() {
    List nil = Nil$.MODULE$; // the empty list
    $colon$colon one = $colon$colon$.MODULE$.apply((Integer) 1, nil); // 1::nil
    $colon$colon two = $colon$colon$.MODULE$.apply((Integer) 2, one); // 2::1::nil
    System.out.println(one);
    System.out.println(two);
    return two;
  }
}

这将使用在类路径中带有scala-library.jar的javac进行编译:

javac -classpath /opt/local/share/scala-2.9/lib/scala-library.jar foo.java

您可以从Scala REPL调用:

scala> (new foo).test
List(1)
List(2, 1)
res0: List[Any] = List(2, 1)

要使用Scala中的Java集合,您无需执行任何特殊操作:

scala> new java.util.ArrayList[Int]
res1: java.util.ArrayList[Int] = []

scala> res1.add(1)
res2: Boolean = true

scala> res1
res3: java.util.ArrayList[Int] = [1]

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

从scala.collection.immutable.List转换为Java中的java.util.List

在我的java类中使用scala.collection.immutable.Map

如何使用 Java 使用 scala.collection.immutable.Stream 类

Spark:不支持的文字类型类scala.collection.immutable.Nil $ List()

从Java使用scala.collection.immutable.Set的示例

将Seq或List转换为collection.immutable.Queue

java.lang.NoSuchMethodException:scala.collection.immutable。$ colon $ colon

scala: List found found : scala.collection.immutable.::[B] required: List[?U1] where type ?U1 <: U (this is a GADT skolem)

如何从Java中的Java列表创建scala.collection.immutable.Seq?

在scala中,Map [_,_]和scala.collection.immutable.Map [_,_]如何具有不同的TypeTag?

将java.util.Map [String,Object]转换为scala.collection.immutable.Map [String,Any]

我可以使用相同的代码遍历一个immutable.List,immutable.Set或Javascript数组或Set吗?

(1至4).toSet和(1至4).to [scala.collection.immutable.Set]之间的Scala差异?

scala.Some 无法转换为 scala.collection.immutable.Map 异常

无法将wrappedArray$ofRef 转换为scala.collection.immutable.Seq

当条目较少时将json转换为“ scala.collection.immutable.HashMap”时发生ClassCastException

排序Seq [scala.collection.immutable.Map [String,org.joda.time.DateTime]]

不支持的文字类型类scala.collection.immutable.HashSet $ HashTrieSet

io.circe.Encoder [scala.collection.immutable.Map [Int,Any]]类型的离散隐式展开

RDD [scala.collection.immutable.Map [String,Any]的最大值和最小值

Intellij IDEA java.lang.NoSuchMethodError:scala.collection.immutable。$ colon $ colon.hd $ 1()Ljava / lang / Object

Apache Spark 2.1:java.lang.UnsupportedOperationException:找不到scala.collection.immutable.Set [String]的编码器

如何在intellij中使用scala.collection.JavaConverters?

Ramda.map over Immutable.List 如何返回 List 而不是 Array?

在Java代码中将scala.collection.Seq <String>转换为java.util.List <String>

类型不匹配; 找到:scala.collection.immutable.Stream [String]必需:Play Scala中的字符串?

从scala.collection.immutable.Iterable [String]中删除第一个和最后一个Element

Spark scala.collection.immutable.$colon$colon 不是字符串模式的有效外部类型

归档时我收到一个错误,称为“值 % 不是 scala.collection.immutable.Range.Inclusive 的成员”