Javaで次のようなメソッドがあります:
public void myMethod(Object... parms);
しかし、スクリプトから期待どおりにこのメソッドを呼び出すことはできません。
ルビーで私がする場合:
$myObject.myMethod(42);
それは私に与えますorg.jruby.exceptions.RaiseException: could not coerce Fixnum to class [Ljava.lang.Object
Javascriptで次のことを試してみると:
myObject.myMethod(42);
それからそれは私に与えますsun.org.mozilla.javascript.internal.EvaluatorException: Can't find method MyClass.test(number). (#2) in at line number 2
もちろん、署名を変更して 1 つのオブジェクトを取得すると、機能します。
これは、最初の位置にある値をInteger
使用して変換する方法を知らない人がいるからだと思います。Integer[]
私はmyMethod({42, 2009})
Rubyでうまくいくと信じていますが、これは醜いようmyMethod(42, 2009)
です. これに対するより良い回避策はありますか?
ありがとう。