ちなみに、jrunscriptの組み込み関数printfは、古いRhinoでも動くように 可変長引数ではなくオブジェクト配列を使用して実装されている。 (内部でargumentsの第2引数以降をjava.lang.Objectの配列にコピーしてから、 java.lang.System.printf()を呼び出す)
1. 実行するスクリプト(varargs.js):
java.lang.System.out.printf("%.1f, %.1f\n", [1.2, 2.4]);
java.lang.System.out.printf("%.1f, %.1f\n", 3.6, 4.8); // 可変長引数の代わりに配列も使える
2-1. Rhino1.7で実行する:
>java -classpath .;js.jar org.mozilla.javascript.tools.shell.Main -w -debug varargs.js
1.2, 2.4
3.6, 4.8
2-2. jrunscript(Java1.7)で実行すると、結果はRhino1.7と同じ:
>jrunscript varargs.js
1.2, 2.4
3.6, 4.8
0 件のコメント:
コメントを投稿