【问题标题】:Java equivalent of apply functions in RJava 等效于 R 中的应用函数
【发布时间】:2016-03-27 16:24:46
【问题描述】:

我已经使用 R 编程大约一年了,并且刚刚开始自学 Java。我喜欢 R 的一件事是 apply() 函数系列(例如 sapply、mapply、apply 等)。

我想知道 Java 是否有等效的功能,或者是否有人用 Java 编写了这些功能 - 我可能自己可以对其中一些基本功能进行介绍,但就他们似乎有优化(即 sapply(FUN, X) 在许多情况下似乎比 for(i in 1:length(X)) FUN(X[i]) 快得多)。

如果不是,我是否在考虑这个问题?也许你不需要经常对向量的每个元素应用一些函数、FUN,因为 Java 是面向对象的,所以在你想要使用这些的典型问题中,Java 不是你最好的选择,或者有还有其他方法吗?

【问题讨论】:

标签: java r lapply


【解决方案1】:

Java 8 中的functional additions 应该可以解决您的问题。

【讨论】:

    【解决方案2】:

    Java 8 之前的 Java 不是函数式语言。

    函数式语言是一种可以将函数作为参数传递给另一个函数的语言。

    Lamba expressions的引入解决了这个问题。

    如果您不能使用 java 8,唯一的可能是创建一个只有一种方法的接口(例如 apply)并在需要时手动调用 apply 方法(例如参见 how swing works to handle events like click)。

    【讨论】:

      猜你喜欢
      • 2019-09-17
      • 2015-05-25
      • 2020-03-18
      • 2012-02-21
      • 1970-01-01
      • 2021-01-14
      • 2012-11-27
      • 1970-01-01
      • 2010-10-30
      相关资源
      最近更新 更多