问题标签 [arity]

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.

0 投票
1 回答
214 浏览

java - 创建变量arity方法

尝试编写一个变量arity方法serializeMethod(),它将任意数量的Member实例作为参数,并按照它们传递给方法的顺序将它们写入文件。该文件是隐藏的,而是通过将放置方法的类中的 ostream 实例变量引用的 OutputStream 对象提供给您。有问题不知道为什么它不接受会员

0 投票
2 回答
259 浏览

elixir - 为什么某些 Elixir 库函数使用多个参数,而另一些使用默认值?

例如,该Integer.parse/2函数的 base 的默认值为 10,而String.to_integer/1两者String.to_integer/2都存在,其中第二个用于base需要指定时。

有什么理由以这种方式实施吗?我什么时候应该使用其中一个来定义函数?

我假设的答案是,对于不同的arities,实现存在一些实际差异,而默认值版本共享相同的实现。但是,我不知道为什么在这种情况下会有不同的实现,特别是。

0 投票
1 回答
335 浏览

scheme - 将列表传递给 DrRacket 中的多参数函数(方案)

我正在尝试为从 1 到 n 的所有数字生成最小公倍数,如OEIS-A003418 中所述。在 DrRacket REPL 中,我使用以下代码:

这给了我一个“结果不匹配”错误(预期为 1,收到 256)。当我省略时,lcm我会得到一个从 1 到 256 的序列输出到控制台。我不确定 arity 不匹配的原因,因为lcm应该能够接受任意多个参数(根据docs),并且apply当它是最外层函数而不是输入时似乎正在做我所期望的到lcm. 我错过了什么?另外,如果有更简单的方法来编写从 1 到 n 的 LCM,请随时分享。

0 投票
2 回答
315 浏览

java - Clojure let vs multi-arity

像 clojure 一样思考函数式,这对 JVM 来说更好、性能更高、负担更轻

或者

0 投票
4 回答
229 浏览

java - 可变参数中的元素数

我对Java如何计算可变参数的长度感到很困惑:

这会打印一个 0。

当我通过时:

这会引发空指针异常。

这将打印 44。

有人可以帮我理解吗?

0 投票
1 回答
144 浏览

scala - 为什么我的 Haskell snd 实现不能在 Scala 中编译?

我按照 Haskell snd定义了以下函数

尝试将它与 a 一起使用List[ListNode[T]]不会编译。为什么不?

在哪里:

错误:

0 投票
1 回答
307 浏览

scala - 为什么 scala.collection.immutable.List[Object] 不是 GenTraversableOnce[?]

简单的问题,对不起,如果这是一个愚蠢的问题,因为我刚刚开始在 scala 中。我收到一个类型不匹配错误,上面写着:

但是根据这篇文章(我有一个 Scala 列表,我怎样才能得到一个 TraversableOnce?), ascala.collection.immutable.List是 anIterable因此也是 a GenTraversableOnce。然而,这个错误似乎表明并非如此。此外,当我实际查看该帖子的已接受答案中的链接时,我没有看到对“可遍历”一词的任何引用。

如果问题与我的内部类不正确有关,那么我不得不说这个错误非常无信息,因为要求内部类的类型为“?” 显然是一个空洞的陈述......理解这一点的任何帮助将不胜感激。

0 投票
1 回答
506 浏览

ruby - 理解Ruby中Proc.curry方法的arity参数

在https://ruby-doc.org/core-2.5.3/Proc.html#method-i-curry的 RubyProc.curry方法文档中,它说:

咖喱-> a_proc

咖喱(arity)-> a_proc

返回一个咖喱​​过程。如果给出了可选的arity 参数,它会确定参数的数量。一个 curried proc 接收一些参数。如果提供了足够数量的参数,它会将提供的参数传递给原始 proc 并返回结果。否则,返回另一个接受其余参数的 curried proc。

我知道arity是指函数的参数数量。但是,我不太清楚它是如何在这里工作的。有人可以帮忙解释一下吗?我已经阅读了文档上的示例,但仍然感到困惑。

0 投票
2 回答
234 浏览

clojure - Clojure:具有不同数量的递归匿名函数

类似于Clojure recur with multi-arity,我希望 recur 使用不同的 arity。但就我而言,我通过 let 定义函数,因为我想使用 let ( file-list) 中的另一个值而不传递它:

我收到此错误:Exception in thread "main" java.lang.RuntimeException: Unable to resolve symbol: download-file in this context

0 投票
0 回答
164 浏览

database - 什么是数据库理论中的查询数量

数据库中查询的数量是多少?一个realtion是属性的数量。是所有输入关系中的属性数,还是新查询输出关系的属性数?例如。输入:数据库 D,查询 Q/k ∈ L,常量元组 t∈ adom(D)^k,其中 L 是语言。谢谢