ScalaコードからJavavarargsを呼び出すことに関する記事はたくさんありますが、逆の方法で見つけたのはこの質問だけでした。具体的な例がないjavaでscalavarargメソッドを使用することです。
Eclipseでは機能しないのに対し、Scalaでは機能scala.Consoleするという理由で、いくつかのJavaコードから使用しようとしています。java.io.Consoleしかし、私は方法を得ることができません
def readLine (text: String, args: Any*): String
2番目の引数にaを期待しているようで、Javaでscala.collection.Seq[Any]を作成する方法がわかりません 。Seqどうすればこれを回避できますか?
私が試したこと:
1)nullを使用する
// Java
String s = scala.Console.readLine("Enter text: ", null);
-で報酬を受け取りNullPointerExceptionます。
2)をに置き換えますnullが、javacは、メソッドがないscala.collection.Seq.empty()など、あらゆる種類のエラーを報告します。Seqempty
3)パッケージオブジェクトNil内のオブジェクトを使用しますが、ここで提案されている構文は、ですが、解決できません。scala.collection.immutablescala.collection.immutable.package$Nil$.MODULE$
もちろんreadLine()、varargsを使用しない方法を使用することもできますが、それは簡単すぎます。